Autogenerated HTML docs for v2.1.1-273-g97b886 
diff --git a/RelNotes/2.1.1.txt b/RelNotes/2.1.1.txt new file mode 100644 index 0000000..830fc3c --- /dev/null +++ b/RelNotes/2.1.1.txt 
@@ -0,0 +1,44 @@ +Git v2.1.1 Release Notes +======================== + + * Git 2.0 had a regression where "git fetch" into a shallowly + cloned repository from a repository with bitmap object index + enabled did not work correctly. This has been corrected. + + * Git 2.0 had a regression which broke (rarely used) "git diff-tree + -t". This has been corrected. + + * "git log --pretty/format=" with an empty format string did not + mean the more obvious "No output whatsoever" but "Use default + format", which was counterintuitive. Now it means "nothing shown + for the log message part". + + * "git -c section.var command" and "git -c section.var= command" + should pass the configuration differently (the former should be a + boolean true, the latter should be an empty string), but they + didn't work that way. Now it does. + + * Applying a patch not generated by Git in a subdirectory used to + check the whitespace breakage using the attributes for incorrect + paths. Also whitespace checks were performed even for paths + excluded via "git apply --exclude=<path>" mechanism. + + * "git bundle create" with date-range specification were meant to + exclude tags outside the range, but it did not work correctly. + + * "git add x" where x that used to be a directory has become a + symbolic link to a directory misbehaved. + + * The prompt script checked $GIT_DIR/ref/stash file to see if there + is a stash, which was a no-no. + + * "git checkout -m" did not switch to another branch while carrying + the local changes forward when a path was deleted from the index. + + * With sufficiently long refnames, fast-import could have overflown + an on-stack buffer. + + * After "pack-refs --prune" packed refs at the top-level, it failed + to prune them. + + * "git gc --auto" triggered from "git fetch --quiet" was not quiet. 
diff --git a/RelNotes/2.2.0.txt b/RelNotes/2.2.0.txt index 22b7361..a8a27a9 100644 --- a/RelNotes/2.2.0.txt +++ b/RelNotes/2.2.0.txt 
@@ -23,6 +23,24 @@  the difference between the base commit version and the working tree  version, which is in line with what "git show" gives.   + * Sometimes users want to report a bug they experience on their + repository, but they are not at liberty to share the contents of + the repository. "fast-export" was taught an "--anonymize" option + to replace blob contents, names of people and paths and log + messages with bland and simple strings to help them. + + * "log --date=iso" uses a slight variant of ISO 8601 format that is + made more human readable. A new "--date=iso-strict" option gives + datetime output that is more strictly conformant. + + * A broken reimplementation of Git could write an invalid index that + records both stage #0 and higher stage entries for the same path. + We now notice and reject such an index, as there is no sensible + fallback (we do not know if the broken tool wanted to resolve and + forgot to remove higher stage entries, or if it wanted to unresolve + and forgot to remove the stage#0 entry). + +  Performance, Internal Implementation, etc.    * The API to manipulate the "refs" is currently undergoing a revamp @@ -65,6 +83,10 @@  "write-tree" (used in "commit") and "diff-index --cached" (used in  "status").   + * A common programming mistake to assign the same short option name + to two separate options is detected by parse_options() API to help + developers. +    Also contains various documentation updates and code clean-ups.   @@ -79,7 +101,6 @@  * "git log --pretty/format=" with an empty format string did not  mean the more obvious "No output whatsoever" but "Use default  format", which was counterintuitive. - (merge b9c7d6e jk/pretty-empty-format later to maint).    * Implementations of "tar" that do not understand an extended pax  header would extract the contents of it in a regular file; make @@ -89,44 +110,62 @@  * "git -c section.var command" and "git -c section.var= command"  should pass the configuration differently (the former should be a  boolean true, the latter should be an empty string). - (merge a789ca7 jk/command-line-config-empty-string later to maint).    * Applying a patch not generated by Git in a subdirectory used to  check the whitespace breakage using the attributes for incorrect  paths. Also whitespace checks were performed even for paths  excluded via "git apply --exclude=<path>" mechanism. - (merge 477a08a jc/apply-ws-prefix later to maint).    * "git bundle create" with date-range specification were meant to  exclude tags outside the range, but it didn't. - (merge 2c8544a lf/bundle-exclusion later to maint).    * "git add x" where x that used to be a directory has become a  symbolic link to a directory misbehaved. - (merge ccad42d rs/refresh-beyond-symlink later to maint).    * The prompt script checked $GIT_DIR/ref/stash file to see if there  is a stash, which was a no-no. - (merge 0fa7f01 jk/prompt-stash-could-be-packed later to maint).    * Pack-protocol documentation had a minor typo. - (merge 5d146f7 sp/pack-protocol-doc-on-shallow later to maint).    * "git checkout -m" did not switch to another branch while carrying  the local changes forward when a path was deleted from the index. - (merge 6a143aa jn/unpack-trees-checkout-m-carry-deletion later to maint).    * With sufficiently long refnames, "git fast-import" could have  overflown an on-stack buffer. - (merge c252785 jk/fast-import-fixes later to maint).    * After "pack-refs --prune" packed refs at the top-level, it failed  to prune them. - (merge afd11d3 jk/prune-top-level-refs-after-packing later to maint).    * Progress output from "git gc --auto" was visible in "git fetch -q". - (merge 6fceed3 nd/fetch-pass-quiet-to-gc-child-process later to maint).    * We used to pass -1000 to poll(2), expecting it to also mean "no  timeout", which should be spelled as -1. - (merge 6c71f8b et/spell-poll-infinite-with-minus-one-only later to maint). + + * "git rebase" documentation was unclear that it is required to + specify on what <upstream> the rebase is to be done when telling it + to first check out <branch>. + (merge 95c6826 so/rebase-doc later to maint). + + * "git push" over HTTP transport had an artificial limit on number of + refs that can be pushed imposed by the command line length. + (merge 26be19b jk/send-pack-many-refspecs later to maint). + + * When receiving an invalid pack stream that records the same object + twice, multiple threads got confused due to a race. + (merge ab791dd jk/index-pack-threading-races later to maint). + + * An attempt to remove the entire tree in the "git fast-import" input + stream caused it to misbehave. + (merge 2668d69 mb/fast-import-delete-root later to maint). + + * Reachability check (used in "git prune" and friends) did not add a + detached HEAD as a starting point to traverse objects still in use. + (merge c40fdd0 mk/reachable-protect-detached-head later to maint). + + * "git config --add section.var val" used to lose existing + section.var whose value was an empty string. + (merge c1063be ta/config-add-to-empty-or-true-fix later to maint). + + * "git fsck" failed to report that it found corrupt objects via its + exit status in some cases. + (merge 30d1038 jk/fsck-exit-code-fix later to maint). 
diff --git a/git-diff-tree.html b/git-diff-tree.html index 542a9aa..3728e54 100644 --- a/git-diff-tree.html +++ b/git-diff-tree.html 
@@ -3,7 +3,7 @@  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   <head>   <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />  -<meta name="generator" content="AsciiDoc 8.6.6" />  +<meta name="generator" content="AsciiDoc 8.6.9" />   <title>git-diff-tree(1)</title>   <style type="text/css">   /* Shared CSS for AsciiDoc xhtml11 and html5 backends */  @@ -87,10 +87,16 @@  ul > li { color: #aaa; }   ul > li > * { color: black; }    -pre {  +.monospaced, code, pre {  + font-family: "Courier New", Courier, monospace;  + font-size: inherit;  + color: navy;   padding: 0;   margin: 0;   }  +pre {  + white-space: pre-wrap;  +}     #author {   color: #527bbd;  @@ -219,7 +225,7 @@  }     div.imageblock div.content { padding-left: 0; }  -span.image img { border-style: none; }  +span.image img { border-style: none; vertical-align: text-bottom; }   a.image:visited { color: white; }     dl {  @@ -349,7 +355,7 @@  margin-bottom: 0.1em;   }    -div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {  +div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {   margin-top: 0;   margin-bottom: 0;   }  @@ -407,18 +413,14 @@  span.overline { text-decoration: overline; }   span.line-through { text-decoration: line-through; }    +div.unbreakable { page-break-inside: avoid; }  +     /*   * xhtml11 specific   *   * */    -tt {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   div.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -452,12 +454,6 @@  *   * */    -.monospaced {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   table.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -537,6 +533,8 @@  @media print {   body.manpage div#toc { display: none; }   }  +  +   </style>   <script type="text/javascript">   /*<![CDATA[*/  @@ -581,7 +579,7 @@    function tocEntries(el, toclevels) {   var result = new Array;  - var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');  + var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');   // Function that scans the DOM tree for header elements (the DOM2   // nodeIterator API would be a better technique but not supported by all   // browsers).  @@ -610,7 +608,7 @@  var i;   for (i = 0; i < toc.childNodes.length; i++) {   var entry = toc.childNodes[i];  - if (entry.nodeName == 'div'  + if (entry.nodeName.toLowerCase() == 'div'   && entry.getAttribute("class")   && entry.getAttribute("class").match(/^toclevel/))   tocEntriesToRemove.push(entry);  @@ -656,7 +654,7 @@  var entriesToRemove = [];   for (i = 0; i < noteholder.childNodes.length; i++) {   var entry = noteholder.childNodes[i];  - if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")  + if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")   entriesToRemove.push(entry);   }   for (i = 0; i < entriesToRemove.length; i++) {  @@ -793,8 +791,8 @@  </dt>   <dd>   <p>  - Suppress diff output. Useful for commands like <tt>git show</tt> that  - show the patch by default, or to cancel the effect of <tt>--patch</tt>.  + Suppress diff output. Useful for commands like <code>git show</code> that  + show the patch by default, or to cancel the effect of <code>--patch</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -807,7 +805,7 @@  <p>   Generate diffs with &lt;n&gt; lines of context instead of   the usual three.  - Implies <tt>-p</tt>.  + Implies <code>-p</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -824,7 +822,7 @@  </dt>   <dd>   <p>  - Synonym for <tt>-p --raw</tt>.  + Synonym for <code>-p --raw</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -863,7 +861,7 @@  <div class="content">   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>default</tt>, <tt>myers</tt>  +<code>default</code>, <code>myers</code>   </dt>   <dd>   <p>  @@ -871,7 +869,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>minimal</tt>  +<code>minimal</code>   </dt>   <dd>   <p>  @@ -880,7 +878,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>patience</tt>  +<code>patience</code>   </dt>   <dd>   <p>  @@ -888,7 +886,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>histogram</tt>  +<code>histogram</code>   </dt>   <dd>   <p>  @@ -900,7 +898,7 @@  </div></div>   <div class="paragraph"><p>For instance, if you configured diff.algorithm variable to a   non-default value and want to use the default one, then you  -have to use <tt>--diff-algorithm=default</tt> option.</p></div>  +have to use <code>--diff-algorithm=default</code> option.</p></div>   </dd>   <dt class="hdlist1">   --stat[=&lt;width&gt;[,&lt;name-width&gt;[,&lt;count&gt;]]]  @@ -911,29 +909,29 @@  will be used for the filename part, and the rest for the graph   part. Maximum width defaults to terminal width, or 80 columns   if not connected to a terminal, and can be overridden by  - <tt>&lt;width&gt;</tt>. The width of the filename part can be limited by  - giving another width <tt>&lt;name-width&gt;</tt> after a comma. The width  + <code>&lt;width&gt;</code>. The width of the filename part can be limited by  + giving another width <code>&lt;name-width&gt;</code> after a comma. The width   of the graph part can be limited by using  - <tt>--stat-graph-width=&lt;width&gt;</tt> (affects all commands generating  - a stat graph) or by setting <tt>diff.statGraphWidth=&lt;width&gt;</tt>  - (does not affect <tt>git format-patch</tt>).  - By giving a third parameter <tt>&lt;count&gt;</tt>, you can limit the  - output to the first <tt>&lt;count&gt;</tt> lines, followed by <tt>...</tt> if  + <code>--stat-graph-width=&lt;width&gt;</code> (affects all commands generating  + a stat graph) or by setting <code>diff.statGraphWidth=&lt;width&gt;</code>  + (does not affect <code>git format-patch</code>).  + By giving a third parameter <code>&lt;count&gt;</code>, you can limit the  + output to the first <code>&lt;count&gt;</code> lines, followed by <code>...</code> if   there are more.   </p>  -<div class="paragraph"><p>These parameters can also be set individually with <tt>--stat-width=&lt;width&gt;</tt>,  -<tt>--stat-name-width=&lt;name-width&gt;</tt> and <tt>--stat-count=&lt;count&gt;</tt>.</p></div>  +<div class="paragraph"><p>These parameters can also be set individually with <code>--stat-width=&lt;width&gt;</code>,  +<code>--stat-name-width=&lt;name-width&gt;</code> and <code>--stat-count=&lt;count&gt;</code>.</p></div>   </dd>   <dt class="hdlist1">   --numstat   </dt>   <dd>   <p>  - Similar to <tt>--stat</tt>, but shows number of added and  + Similar to <code>--stat</code>, but shows number of added and   deleted lines in decimal notation and pathname without   abbreviation, to make it more machine friendly. For  - binary files, outputs two <tt>-</tt> instead of saying  - <tt>0 0</tt>.  + binary files, outputs two <code>-</code> instead of saying  + <code>0 0</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -941,7 +939,7 @@  </dt>   <dd>   <p>  - Output only the last line of the <tt>--stat</tt> format containing total  + Output only the last line of the <code>--stat</code> format containing total   number of modified files, as well as number of added and deleted   lines.   </p>  @@ -952,9 +950,9 @@  <dd>   <p>   Output the distribution of relative amount of changes for each  - sub-directory. The behavior of <tt>--dirstat</tt> can be customized by  + sub-directory. The behavior of <code>--dirstat</code> can be customized by   passing it a comma separated list of parameters.  - The defaults are controlled by the <tt>diff.dirstat</tt> configuration  + The defaults are controlled by the <code>diff.dirstat</code> configuration   variable (see <a href="git-config.html">git-config(1)</a>).   The following parameters are available:   </p>  @@ -962,7 +960,7 @@  <div class="content">   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>changes</tt>  +<code>changes</code>   </dt>   <dd>   <p>  @@ -974,39 +972,39 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>lines</tt>  +<code>lines</code>   </dt>   <dd>   <p>   Compute the dirstat numbers by doing the regular line-based diff   analysis, and summing the removed/added line counts. (For binary   files, count 64-byte chunks instead, since binary files have no  - natural concept of lines). This is a more expensive <tt>--dirstat</tt>  - behavior than the <tt>changes</tt> behavior, but it does count rearranged  + natural concept of lines). This is a more expensive <code>--dirstat</code>  + behavior than the <code>changes</code> behavior, but it does count rearranged   lines within a file as much as other changes. The resulting output  - is consistent with what you get from the other <tt>--*stat</tt> options.  + is consistent with what you get from the other <code>--*stat</code> options.   </p>   </dd>   <dt class="hdlist1">  -<tt>files</tt>  +<code>files</code>   </dt>   <dd>   <p>   Compute the dirstat numbers by counting the number of files changed.   Each changed file counts equally in the dirstat analysis. This is  - the computationally cheapest <tt>--dirstat</tt> behavior, since it does  + the computationally cheapest <code>--dirstat</code> behavior, since it does   not have to look at the file contents at all.   </p>   </dd>   <dt class="hdlist1">  -<tt>cumulative</tt>  +<code>cumulative</code>   </dt>   <dd>   <p>   Count changes in a child directory for the parent directory as well.  - Note that when using <tt>cumulative</tt>, the sum of the percentages  + Note that when using <code>cumulative</code>, the sum of the percentages   reported may exceed 100%. The default (non-cumulative) behavior can  - be specified with the <tt>noncumulative</tt> parameter.  + be specified with the <code>noncumulative</code> parameter.   </p>   </dd>   <dt class="hdlist1">  @@ -1024,7 +1022,7 @@  <div class="paragraph"><p>Example: The following will count changed files, while ignoring   directories with less than 10% of the total amount of changed files,   and accumulating child directory counts in the parent directories:  -<tt>--dirstat=files,10,cumulative</tt>.</p></div>  +<code>--dirstat=files,10,cumulative</code>.</p></div>   </dd>   <dt class="hdlist1">   --summary  @@ -1040,7 +1038,7 @@  </dt>   <dd>   <p>  - Synonym for <tt>-p --stat</tt>.  + Synonym for <code>-p --stat</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1048,11 +1046,11 @@  </dt>   <dd>   <p>  - When <tt>--raw</tt>, <tt>--numstat</tt>, <tt>--name-only</tt> or <tt>--name-status</tt> has been  + When <code>--raw</code>, <code>--numstat</code>, <code>--name-only</code> or <code>--name-status</code> has been   given, do not munge pathnames and use NULs as output field terminators.   </p>   <div class="paragraph"><p>Without this option, each pathname output will have TAB, LF, double quotes,  -and backslash characters replaced with <tt>\t</tt>, <tt>\n</tt>, <tt>\"</tt>, and <tt>\\</tt>,  +and backslash characters replaced with <code>\t</code>, <code>\n</code>, <code>\"</code>, and <code>\\</code>,   respectively, and the pathname will be enclosed in double quotes if   any of those replacements occurred.</p></div>   </dd>  @@ -1070,7 +1068,7 @@  <dd>   <p>   Show only names and status of changed files. See the description  - of the <tt>--diff-filter</tt> option on what the status letters mean.  + of the <code>--diff-filter</code> option on what the status letters mean.   </p>   </dd>   <dt class="hdlist1">  @@ -1078,13 +1076,13 @@  </dt>   <dd>   <p>  - Specify how differences in submodules are shown. When <tt>--submodule</tt>  - or <tt>--submodule=log</tt> is given, the <em>log</em> format is used. This format lists  - the commits in the range like <a href="git-submodule.html">git-submodule(1)</a> <tt>summary</tt> does.  - Omitting the <tt>--submodule</tt> option or specifying <tt>--submodule=short</tt>,  + Specify how differences in submodules are shown. When <code>--submodule</code>  + or <code>--submodule=log</code> is given, the <em>log</em> format is used. This format lists  + the commits in the range like <a href="git-submodule.html">git-submodule(1)</a> <code>summary</code> does.  + Omitting the <code>--submodule</code> option or specifying <code>--submodule=short</code>,   uses the <em>short</em> format. This format just shows the names of the commits   at the beginning and end of the range. Can be tweaked via the  - <tt>diff.submodule</tt> configuration variable.  + <code>diff.submodule</code> configuration variable.   </p>   </dd>   <dt class="hdlist1">  @@ -1093,8 +1091,8 @@  <dd>   <p>   Show colored diff.  - <tt>--color</tt> (i.e. without <em>=&lt;when&gt;</em>) is the same as <tt>--color=always</tt>.  - <em>&lt;when&gt;</em> can be one of <tt>always</tt>, <tt>never</tt>, or <tt>auto</tt>.  + <code>--color</code> (i.e. without <em>=&lt;when&gt;</em>) is the same as <code>--color=always</code>.  + <em>&lt;when&gt;</em> can be one of <code>always</code>, <code>never</code>, or <code>auto</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1103,7 +1101,7 @@  <dd>   <p>   Turn off colored diff.  - It is the same as <tt>--color=never</tt>.  + It is the same as <code>--color=never</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1113,7 +1111,7 @@  <p>   Show a word diff, using the &lt;mode&gt; to delimit changed words.   By default, words are delimited by whitespace; see  - <tt>--word-diff-regex</tt> below. The &lt;mode&gt; defaults to <em>plain</em>, and  + <code>--word-diff-regex</code> below. The &lt;mode&gt; defaults to <em>plain</em>, and   must be one of:   </p>   <div class="openblock">  @@ -1124,7 +1122,7 @@  </dt>   <dd>   <p>  - Highlight changed words using only colors. Implies <tt>--color</tt>.  + Highlight changed words using only colors. Implies <code>--color</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1132,7 +1130,7 @@  </dt>   <dd>   <p>  - Show words as <tt>[-removed-]</tt> and <tt>{+added+}</tt>. Makes no  + Show words as <code>[-removed-]</code> and <code>{+added+}</code>. Makes no   attempts to escape the delimiters if they appear in the input,   so the output may be ambiguous.   </p>  @@ -1144,10 +1142,10 @@  <p>   Use a special line-based format intended for script   consumption. Added/removed/unchanged runs are printed in the  - usual unified diff format, starting with a <tt>+</tt>/<tt>-</tt>/` `  + usual unified diff format, starting with a <code>+</code>/<code>-</code>/` `   character at the beginning of the line and extending to the   end of the line. Newlines in the input are represented by a  - tilde <tt>~</tt> on a line of its own.  + tilde <code>~</code> on a line of its own.   </p>   </dd>   <dt class="hdlist1">  @@ -1170,12 +1168,12 @@  <p>   Use &lt;regex&gt; to decide what a word is, instead of considering   runs of non-whitespace to be a word. Also implies  - <tt>--word-diff</tt> unless it was already enabled.  + <code>--word-diff</code> unless it was already enabled.   </p>   <div class="paragraph"><p>Every non-overlapping match of the   &lt;regex&gt; is considered a word. Anything between these matches is   considered whitespace and ignored(!) for the purposes of finding  -differences. You may want to append <tt>|[^[:space:]]</tt> to your regular  +differences. You may want to append <code>|[^[:space:]]</code> to your regular   expression to make sure that it matches all non-whitespace characters.   A match that contains a newline is silently truncated(!) at the   newline.</p></div>  @@ -1189,8 +1187,8 @@  </dt>   <dd>   <p>  - Equivalent to <tt>--word-diff=color</tt> plus (if a regex was  - specified) <tt>--word-diff-regex=&lt;regex&gt;</tt>.  + Equivalent to <code>--word-diff=color</code> plus (if a regex was  + specified) <code>--word-diff-regex=&lt;regex&gt;</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1208,7 +1206,7 @@  <dd>   <p>   Warn if changes introduce whitespace errors. What are  - considered whitespace errors is controlled by <tt>core.whitespace</tt>  + considered whitespace errors is controlled by <code>core.whitespace</code>   configuration. By default, trailing whitespaces (including   lines that solely consist of whitespaces) and a space character   that is immediately followed by a tab character inside the  @@ -1232,8 +1230,8 @@  </dt>   <dd>   <p>  - In addition to <tt>--full-index</tt>, output a binary diff that  - can be applied with <tt>git-apply</tt>.  + In addition to <code>--full-index</code>, output a binary diff that  + can be applied with <code>git-apply</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1244,9 +1242,9 @@  Instead of showing the full 40-byte hexadecimal object   name in diff-raw format output and diff-tree header   lines, show only a partial prefix. This is  - independent of the <tt>--full-index</tt> option above, which controls  + independent of the <code>--full-index</code> option above, which controls   the diff-patch output format. Non default number of  - digits can be specified with <tt>--abbrev=&lt;n&gt;</tt>.  + digits can be specified with <code>--abbrev=&lt;n&gt;</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1264,15 +1262,15 @@  not as a series of deletion and insertion mixed together with a very   few lines that happen to match textually as the context, but as a   single deletion of everything old followed by a single insertion of  -everything new, and the number <tt>m</tt> controls this aspect of the -B  -option (defaults to 60%). <tt>-B/70%</tt> specifies that less than 30% of the  +everything new, and the number <code>m</code> controls this aspect of the -B  +option (defaults to 60%). <code>-B/70%</code> specifies that less than 30% of the   original should remain in the result for Git to consider it a total   rewrite (i.e. otherwise the resulting patch will be a series of   deletion and insertion mixed together with context lines).</p></div>   <div class="paragraph"><p>When used with -M, a totally-rewritten file is also considered as the   source of a rename (usually -M only considers a file that disappeared  -as the source of a rename), and the number <tt>n</tt> controls this aspect of  -the -B option (defaults to 50%). <tt>-B20%</tt> specifies that a change with  +as the source of a rename), and the number <code>n</code> controls this aspect of  +the -B option (defaults to 50%). <code>-B20%</code> specifies that a change with   addition and deletion compared to 20% or more of the file&#8217;s size are   eligible for being picked up as a possible source of a rename to   another file.</p></div>  @@ -1286,15 +1284,15 @@  <dd>   <p>   Detect renames.  - If <tt>n</tt> is specified, it is a threshold on the similarity  + If <code>n</code> is specified, it is a threshold on the similarity   index (i.e. amount of addition/deletions compared to the  - file&#8217;s size). For example, <tt>-M90%</tt> means Git should consider a  + file&#8217;s size). For example, <code>-M90%</code> means Git should consider a   delete/add pair to be a rename if more than 90% of the file  - hasn&#8217;t changed. Without a <tt>%</tt> sign, the number is to be read as  - a fraction, with a decimal point before it. I.e., <tt>-M5</tt> becomes  - 0.5, and is thus the same as <tt>-M50%</tt>. Similarly, <tt>-M05</tt> is  - the same as <tt>-M5%</tt>. To limit detection to exact renames, use  - <tt>-M100%</tt>. The default similarity index is 50%.  + hasn&#8217;t changed. Without a <code>%</code> sign, the number is to be read as  + a fraction, with a decimal point before it. I.e., <code>-M5</code> becomes  + 0.5, and is thus the same as <code>-M50%</code>. Similarly, <code>-M05</code> is  + the same as <code>-M5%</code>. To limit detection to exact renames, use  + <code>-M100%</code>. The default similarity index is 50%.   </p>   </dd>   <dt class="hdlist1">  @@ -1305,8 +1303,8 @@  </dt>   <dd>   <p>  - Detect copies as well as renames. See also <tt>--find-copies-harder</tt>.  - If <tt>n</tt> is specified, it has the same meaning as for <tt>-M&lt;n&gt;</tt>.  + Detect copies as well as renames. See also <code>--find-copies-harder</code>.  + If <code>n</code> is specified, it has the same meaning as for <code>-M&lt;n&gt;</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1314,13 +1312,13 @@  </dt>   <dd>   <p>  - For performance reasons, by default, <tt>-C</tt> option finds copies only  + For performance reasons, by default, <code>-C</code> option finds copies only   if the original file of the copy was modified in the same   changeset. This flag makes the command   inspect unmodified files as candidates for the source of   copy. This is a very expensive operation for large   projects, so use it with caution. Giving more than one  - <tt>-C</tt> option has the same effect.  + <code>-C</code> option has the same effect.   </p>   </dd>   <dt class="hdlist1">  @@ -1332,14 +1330,14 @@  <dd>   <p>   Omit the preimage for deletes, i.e. print only the header but not  - the diff between the preimage and <tt>/dev/null</tt>. The resulting patch  - is not meant to be applied with <tt>patch</tt> or <tt>git apply</tt>; this is  + the diff between the preimage and <code>/dev/null</code>. The resulting patch  + is not meant to be applied with <code>patch</code> or <code>git apply</code>; this is   solely for people who want to just concentrate on reviewing the   text after the change. In addition, the output obviously lack   enough information to apply such a patch in reverse, even manually,   hence the name of the option.   </p>  -<div class="paragraph"><p>When used together with <tt>-B</tt>, omit also the preimage in the deletion part  +<div class="paragraph"><p>When used together with <code>-B</code>, omit also the preimage in the deletion part   of a delete/create pair.</p></div>   </dd>   <dt class="hdlist1">  @@ -1347,7 +1345,7 @@  </dt>   <dd>   <p>  - The <tt>-M</tt> and <tt>-C</tt> options require O(n^2) processing time where n  + The <code>-M</code> and <code>-C</code> options require O(n^2) processing time where n   is the number of potential rename/copy targets. This   option prevents rename/copy detection from running if   the number of rename/copy targets exceeds the specified  @@ -1359,13 +1357,13 @@  </dt>   <dd>   <p>  - Select only files that are Added (<tt>A</tt>), Copied (<tt>C</tt>),  - Deleted (<tt>D</tt>), Modified (<tt>M</tt>), Renamed (<tt>R</tt>), have their  - type (i.e. regular file, symlink, submodule, &#8230;) changed (<tt>T</tt>),  - are Unmerged (<tt>U</tt>), are  - Unknown (<tt>X</tt>), or have had their pairing Broken (<tt>B</tt>).  + Select only files that are Added (<code>A</code>), Copied (<code>C</code>),  + Deleted (<code>D</code>), Modified (<code>M</code>), Renamed (<code>R</code>), have their  + type (i.e. regular file, symlink, submodule, &#8230;) changed (<code>T</code>),  + are Unmerged (<code>U</code>), are  + Unknown (<code>X</code>), or have had their pairing Broken (<code>B</code>).   Any combination of the filter characters (including none) can be used.  - When <tt>*</tt> (All-or-none) is added to the combination, all  + When <code>*</code> (All-or-none) is added to the combination, all   paths are selected if there is any file that matches   other criteria in the comparison; if there is no file   that matches other criteria, nothing is selected.  @@ -1383,7 +1381,7 @@  <div class="paragraph"><p>It is useful when you&#8217;re looking for an exact block of code (like a   struct), and want to know the history of that block since it first   came into being: use the feature iteratively to feed the interesting  -block in the preimage back into <tt>-S</tt>, and keep going until you get the  +block in the preimage back into <code>-S</code>, and keep going until you get the   very first version of the block.</p></div>   </dd>   <dt class="hdlist1">  @@ -1394,17 +1392,17 @@  Look for differences whose patch text contains added/removed   lines that match &lt;regex&gt;.   </p>  -<div class="paragraph"><p>To illustrate the difference between <tt>-S&lt;regex&gt; --pickaxe-regex</tt> and  -<tt>-G&lt;regex&gt;</tt>, consider a commit with the following diff in the same  +<div class="paragraph"><p>To illustrate the difference between <code>-S&lt;regex&gt; --pickaxe-regex</code> and  +<code>-G&lt;regex&gt;</code>, consider a commit with the following diff in the same   file:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>+ return !regexec(regexp, two-&gt;ptr, 1, &amp;regmatch, 0);  +<pre><code>+ return !regexec(regexp, two-&gt;ptr, 1, &amp;regmatch, 0);   ...  -- hit = !regexec(regexp, mf2.ptr, 1, &amp;regmatch, 0);</tt></pre>  +- hit = !regexec(regexp, mf2.ptr, 1, &amp;regmatch, 0);</code></pre>   </div></div>  -<div class="paragraph"><p>While <tt>git log -G"regexec\(regexp"</tt> will show this commit, <tt>git log  --S"regexec\(regexp" --pickaxe-regex</tt> will not (because the number of  +<div class="paragraph"><p>While <code>git log -G"regexec\(regexp"</code> will show this commit, <code>git log  +-S"regexec\(regexp" --pickaxe-regex</code> will not (because the number of   occurrences of that string did not change).</p></div>   <div class="paragraph"><p>See the <em>pickaxe</em> entry in <a href="gitdiffcore.html">gitdiffcore(7)</a> for more   information.</p></div>  @@ -1414,7 +1412,7 @@  </dt>   <dd>   <p>  - When <tt>-S</tt> or <tt>-G</tt> finds a change, show all the changes in that  + When <code>-S</code> or <code>-G</code> finds a change, show all the changes in that   changeset, not just the files that contain the change   in &lt;string&gt;.   </p>  @@ -1424,7 +1422,7 @@  </dt>   <dd>   <p>  - Treat the &lt;string&gt; given to <tt>-S</tt> as an extended POSIX regular  + Treat the &lt;string&gt; given to <code>-S</code> as an extended POSIX regular   expression to match.   </p>   </dd>  @@ -1435,9 +1433,9 @@  <p>   Output the patch in the order specified in the   &lt;orderfile&gt;, which has one shell glob pattern per line.  - This overrides the <tt>diff.orderfile</tt> configuration variable  - (see <a href="git-config.html">git-config(1)</a>). To cancel <tt>diff.orderfile</tt>,  - use <tt>-O/dev/null</tt>.  + This overrides the <code>diff.orderfile</code> configuration variable  + (see <a href="git-config.html">git-config(1)</a>). To cancel <code>diff.orderfile</code>,  + use <code>-O/dev/null</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1550,7 +1548,7 @@  </dt>   <dd>   <p>  - Disable all output of the program. Implies <tt>--exit-code</tt>.  + Disable all output of the program. Implies <code>--exit-code</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1650,7 +1648,7 @@  <p>   If provided, the results are limited to a subset of files   matching one of these prefix strings.  - i.e., file matches <tt>/^&lt;pattern1&gt;|&lt;pattern2&gt;|.../</tt>  + i.e., file matches <code>/^&lt;pattern1&gt;|&lt;pattern2&gt;|.../</code>   Note that this parameter does not provide any wildcard or regexp   features.   </p>  @@ -1769,7 +1767,7 @@  <dd>   <p>   Show the full 40-byte hexadecimal commit object name. This negates  - <tt>--abbrev-commit</tt> and those options which imply it such as  + <code>--abbrev-commit</code> and those options which imply it such as   "--oneline". It also overrides the <em>log.abbrevCommit</em> variable.   </p>   </dd>  @@ -1801,15 +1799,15 @@  <p>   Show the notes (see <a href="git-notes.html">git-notes(1)</a>) that annotate the   commit, when showing the commit log message. This is the default  - for <tt>git log</tt>, <tt>git show</tt> and <tt>git whatchanged</tt> commands when  - there is no <tt>--pretty</tt>, <tt>--format</tt>, or <tt>--oneline</tt> option given  + for <code>git log</code>, <code>git show</code> and <code>git whatchanged</code> commands when  + there is no <code>--pretty</code>, <code>--format</code>, or <code>--oneline</code> option given   on the command line.   </p>   <div class="paragraph"><p>By default, the notes shown are from the notes refs listed in the   <em>core.notesRef</em> and <em>notes.displayRef</em> variables (or corresponding   environment overrides). See <a href="git-config.html">git-config(1)</a> for more details.</p></div>   <div class="paragraph"><p>With an optional <em>&lt;ref&gt;</em> argument, show this notes ref instead of the  -default notes ref(s). The ref is taken to be in <tt>refs/notes/</tt> if it  +default notes ref(s). The ref is taken to be in <code>refs/notes/</code> if it   is not qualified.</p></div>   <div class="paragraph"><p>Multiple --notes options can be combined to control which notes are   being displayed. Examples: "--notes=foo" will show only notes from  @@ -1821,7 +1819,7 @@  </dt>   <dd>   <p>  - Do not show notes. This negates the above <tt>--notes</tt> option, by  + Do not show notes. This negates the above <code>--notes</code> option, by   resetting the list of notes refs from which notes are shown.   Options are parsed in the order given on the command line, so e.g.   "--notes --notes=foo --no-notes --notes=bar" will only show notes  @@ -1846,7 +1844,7 @@  <dd>   <p>   Check the validity of a signed commit object by passing the signature  - to <tt>gpg --verify</tt> and show the output.  + to <code>gpg --verify</code> and show the output.   </p>   </dd>   <dt class="hdlist1">  @@ -1925,7 +1923,7 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;sha1&gt; &lt;title line&gt;</tt></pre>  +<pre><code>&lt;sha1&gt; &lt;title line&gt;</code></pre>   </div></div>   <div class="paragraph"><p>This is designed to be as compact as possible.</p></div>   </li>  @@ -1935,12 +1933,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  -Author: &lt;author&gt;</tt></pre>  +<pre><code>commit &lt;sha1&gt;  +Author: &lt;author&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   </li>   <li>  @@ -1949,17 +1947,17 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  +<pre><code>commit &lt;sha1&gt;   Author: &lt;author&gt;  -Date: &lt;author date&gt;</tt></pre>  +Date: &lt;author date&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -1968,17 +1966,17 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  +<pre><code>commit &lt;sha1&gt;   Author: &lt;author&gt;  -Commit: &lt;committer&gt;</tt></pre>  +Commit: &lt;committer&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -1987,19 +1985,19 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  +<pre><code>commit &lt;sha1&gt;   Author: &lt;author&gt;   AuthorDate: &lt;author date&gt;   Commit: &lt;committer&gt;  -CommitDate: &lt;committer date&gt;</tt></pre>  +CommitDate: &lt;committer date&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -2008,14 +2006,14 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>From &lt;sha1&gt; &lt;date&gt;  +<pre><code>From &lt;sha1&gt; &lt;date&gt;   From: &lt;author&gt;   Date: &lt;author date&gt;  -Subject: [PATCH] &lt;title line&gt;</tt></pre>  +Subject: [PATCH] &lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -2041,8 +2039,8 @@  would show something like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>The author of fe6e0ee was Junio C Hamano, 23 hours ago  -The title was &gt;&gt;t4119: test autocomputing -p&lt;n&gt; for traditional diff input.&lt;&lt;</tt></pre>  +<pre><code>The author of fe6e0ee was Junio C Hamano, 23 hours ago  +The title was &gt;&gt;t4119: test autocomputing -p&lt;n&gt; for traditional diff input.&lt;&lt;</code></pre>   </div></div>   <div class="paragraph"><p>The placeholders are:</p></div>   <div class="ulist"><ul>  @@ -2120,7 +2118,12 @@  </li>   <li>   <p>  -<em>%ai</em>: author date, ISO 8601 format  +<em>%ai</em>: author date, ISO 8601-like format  +</p>  +</li>  +<li>  +<p>  +<em>%aI</em>: author date, strict ISO 8601 format   </p>   </li>   <li>  @@ -2167,7 +2170,12 @@  </li>   <li>   <p>  -<em>%ci</em>: committer date, ISO 8601 format  +<em>%ci</em>: committer date, ISO 8601-like format  +</p>  +</li>  +<li>  +<p>  +<em>%cI</em>: committer date, strict ISO 8601 format   </p>   </li>   <li>  @@ -2228,12 +2236,12 @@  </li>   <li>   <p>  -<em>%gD</em>: reflog selector, e.g., <tt>refs/stash@{1}</tt>  +<em>%gD</em>: reflog selector, e.g., <code>refs/stash@{1}</code>   </p>   </li>   <li>   <p>  -<em>%gd</em>: shortened reflog selector, e.g., <tt>stash@{1}</tt>  +<em>%gd</em>: shortened reflog selector, e.g., <code>stash@{1}</code>   </p>   </li>   <li>  @@ -2286,10 +2294,10 @@  <li>   <p>   <em>%C(&#8230;)</em>: color specification, as described in color.branch.* config option;  - adding <tt>auto,</tt> at the beginning will emit color only when colors are  - enabled for log output (by <tt>color.diff</tt>, <tt>color.ui</tt>, or <tt>--color</tt>, and  - respecting the <tt>auto</tt> settings of the former if we are going to a  - terminal). <tt>auto</tt> alone (i.e. <tt>%C(auto)</tt>) will turn on auto coloring  + adding <code>auto,</code> at the beginning will emit color only when colors are  + enabled for log output (by <code>color.diff</code>, <code>color.ui</code>, or <code>--color</code>, and  + respecting the <code>auto</code> settings of the former if we are going to a  + terminal). <code>auto</code> alone (i.e. <code>%C(auto)</code>) will turn on auto coloring   on the next placeholders until the color is switched again.   </p>   </li>  @@ -2362,16 +2370,16 @@  <div class="title">Note</div>   </td>   <td class="content">Some placeholders may depend on other options given to the  -revision traversal engine. For example, the <tt>%g*</tt> reflog options will  +revision traversal engine. For example, the <code>%g*</code> reflog options will   insert an empty string unless we are traversing reflog entries (e.g., by  -<tt>git log -g</tt>). The <tt>%d</tt> placeholder will use the "short" decoration  -format if <tt>--decorate</tt> was not already provided on the command line.</td>  +<code>git log -g</code>). The <code>%d</code> placeholder will use the "short" decoration  +format if <code>--decorate</code> was not already provided on the command line.</td>   </tr></table>   </div>  -<div class="paragraph"><p>If you add a <tt>+</tt> (plus sign) after <em>%</em> of a placeholder, a line-feed  +<div class="paragraph"><p>If you add a <code>+</code> (plus sign) after <em>%</em> of a placeholder, a line-feed   is inserted immediately before the expansion if and only if the   placeholder expands to a non-empty string.</p></div>  -<div class="paragraph"><p>If you add a <tt>-</tt> (minus sign) after <em>%</em> of a placeholder, line-feeds that  +<div class="paragraph"><p>If you add a <code>-</code> (minus sign) after <em>%</em> of a placeholder, line-feeds that   immediately precede the expansion are deleted if and only if the   placeholder expands to an empty string.</p></div>   <div class="paragraph"><p>If you add a ` ` (space) after <em>%</em> of a placeholder, a space  @@ -2391,7 +2399,7 @@  For example:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git log -2 --pretty=format:%h 4da45bef \  +<pre><code>$ git log -2 --pretty=format:%h 4da45bef \   | perl -pe '$_ .= " -- NO NEWLINE\n" unless /\n/'   4da45be   7134973 -- NO NEWLINE  @@ -2399,15 +2407,15 @@  $ git log -2 --pretty=tformat:%h 4da45bef \   | perl -pe '$_ .= " -- NO NEWLINE\n" unless /\n/'   4da45be  -7134973</tt></pre>  +7134973</code></pre>   </div></div>  -<div class="paragraph"><p>In addition, any unrecognized string that has a <tt>%</tt> in it is interpreted  -as if it has <tt>tformat:</tt> in front of it. For example, these two are  +<div class="paragraph"><p>In addition, any unrecognized string that has a <code>%</code> in it is interpreted  +as if it has <code>tformat:</code> in front of it. For example, these two are   equivalent:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git log -2 --pretty=tformat:%h 4da45bef  -$ git log -2 --pretty=%h 4da45bef</tt></pre>  +<pre><code>$ git log -2 --pretty=tformat:%h 4da45bef  +$ git log -2 --pretty=%h 4da45bef</code></pre>   </div></div>   </li>   </ul></div>  @@ -2420,30 +2428,30 @@  example some architecture-specific files, you might do:</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git diff-tree -r &lt;tree-ish&gt; &lt;tree-ish&gt; arch/ia64 include/asm-ia64</tt></pre>  +<pre><code>git diff-tree -r &lt;tree-ish&gt; &lt;tree-ish&gt; arch/ia64 include/asm-ia64</code></pre>   </div></div>   <div class="paragraph"><p>and it will only show you what changed in those two directories.</p></div>  -<div class="paragraph"><p>Or if you are searching for what changed in just <tt>kernel/sched.c</tt>, just do</p></div>  +<div class="paragraph"><p>Or if you are searching for what changed in just <code>kernel/sched.c</code>, just do</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git diff-tree -r &lt;tree-ish&gt; &lt;tree-ish&gt; kernel/sched.c</tt></pre>  +<pre><code>git diff-tree -r &lt;tree-ish&gt; &lt;tree-ish&gt; kernel/sched.c</code></pre>   </div></div>   <div class="paragraph"><p>and it will ignore all differences to other files.</p></div>   <div class="paragraph"><p>The pattern is always the prefix, and is matched exactly. There are no   wildcards. Even stricter, it has to match a complete path component.  -I.e. "foo" does not pick up <tt>foobar.h</tt>. "foo" does match <tt>foo/bar.h</tt>  +I.e. "foo" does not pick up <code>foobar.h</code>. "foo" does match <code>foo/bar.h</code>   so it can be used to name subdirectories.</p></div>   <div class="paragraph"><p>An example of normal usage is:</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>torvalds@ppc970:~/git&gt; git diff-tree --abbrev 5319e4  -:100664 100664 ac348b... a01513... git-fsck-objects.c</tt></pre>  +<pre><code>torvalds@ppc970:~/git&gt; git diff-tree --abbrev 5319e4  +:100664 100664 ac348b... a01513... git-fsck-objects.c</code></pre>   </div></div>   <div class="paragraph"><p>which tells you that the last commit changed just one file (it&#8217;s from   this one:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>commit 3c6f7ca19ad4043e9e72fa94106f352897e651a8  +<pre><code>commit 3c6f7ca19ad4043e9e72fa94106f352897e651a8   tree 5319e4d609cdd282069cc4dce33c1db559539b03   parent b4e628ea30d5ab3606119d2ea5caeab141d38df7   author Linus Torvalds &lt;torvalds@ppc970.osdl.org&gt; Sat Apr 9 12:02:30 2005  @@ -2452,7 +2460,7 @@  Make "git-fsck-objects" print out all the root commits it finds.     Once I do the reference tracking, I'll also make it print out all the  -HEAD commits it finds, which is even more interesting.</tt></pre>  +HEAD commits it finds, which is even more interesting.</code></pre>   </div></div>   <div class="paragraph"><p>in case you care).</p></div>   </div>  @@ -2504,12 +2512,12 @@  <div class="paragraph"><p>An output line is formatted this way:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>in-place edit :100644 100644 bcd1234... 0123456... M file0  +<pre><code>in-place edit :100644 100644 bcd1234... 0123456... M file0   copy-edit :100644 100644 abcd123... 1234567... C68 file1 file2   rename-edit :100644 100644 abcd123... 1234567... R86 file1 file3   create :000000 100644 0000000... 1234567... A file4   delete :100644 000000 1234567... 0000000... D file5  -unmerged :000000 000000 0000000... 0000000... U file6</tt></pre>  +unmerged :000000 000000 0000000... 0000000... U file6</code></pre>   </div></div>   <div class="paragraph"><p>That is, from the left to the right:</p></div>   <div class="olist arabic"><ol class="arabic">  @@ -2641,10 +2649,10 @@  <div class="paragraph"><p>Example:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>:100644 100644 5be4a4...... 000000...... M file.c</tt></pre>  +<pre><code>:100644 100644 5be4a4...... 000000...... M file.c</code></pre>   </div></div>  -<div class="paragraph"><p>When <tt>-z</tt> option is not used, TAB, LF, and backslash characters  -in pathnames are represented as <tt>\t</tt>, <tt>\n</tt>, and <tt>\\</tt>,  +<div class="paragraph"><p>When <code>-z</code> option is not used, TAB, LF, and backslash characters  +in pathnames are represented as <code>\t</code>, <code>\n</code>, and <code>\\</code>,   respectively.</p></div>   </div>   </div>  @@ -2685,7 +2693,7 @@  <div class="paragraph"><p>Example:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>::100644 100644 100644 fabadb8... cc95eb0... 4866510... MM describe.c</tt></pre>  +<pre><code>::100644 100644 100644 fabadb8... cc95eb0... 4866510... MM describe.c</code></pre>   </div></div>   <div class="paragraph"><p>Note that <em>combined diff</em> lists only files which were modified from   all parents.</p></div>  @@ -2709,12 +2717,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>diff --git a/file1 b/file2</tt></pre>  +<pre><code>diff --git a/file1 b/file2</code></pre>   </div></div>  -<div class="paragraph"><p>The <tt>a/</tt> and <tt>b/</tt> filenames are the same unless rename/copy is  +<div class="paragraph"><p>The <code>a/</code> and <code>b/</code> filenames are the same unless rename/copy is   involved. Especially, even for a creation or a deletion,  -<tt>/dev/null</tt> is <em>not</em> used in place of the <tt>a/</tt> or <tt>b/</tt> filenames.</p></div>  -<div class="paragraph"><p>When rename/copy is involved, <tt>file1</tt> and <tt>file2</tt> show the  +<code>/dev/null</code> is <em>not</em> used in place of the <code>a/</code> or <code>b/</code> filenames.</p></div>  +<div class="paragraph"><p>When rename/copy is involved, <code>file1</code> and <code>file2</code> show the   name of the source file of the rename/copy and the name of   the file that rename/copy produces, respectively.</p></div>   </li>  @@ -2724,7 +2732,7 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>old mode &lt;mode&gt;  +<pre><code>old mode &lt;mode&gt;   new mode &lt;mode&gt;   deleted file mode &lt;mode&gt;   new file mode &lt;mode&gt;  @@ -2734,11 +2742,11 @@  rename to &lt;path&gt;   similarity index &lt;number&gt;   dissimilarity index &lt;number&gt;  -index &lt;hash&gt;..&lt;hash&gt; &lt;mode&gt;</tt></pre>  +index &lt;hash&gt;..&lt;hash&gt; &lt;mode&gt;</code></pre>   </div></div>   <div class="paragraph"><p>File modes are printed as 6-digit octal numbers including the file type   and file permission bits.</p></div>  -<div class="paragraph"><p>Path names in extended headers do not include the <tt>a/</tt> and <tt>b/</tt> prefixes.</p></div>  +<div class="paragraph"><p>Path names in extended headers do not include the <code>a/</code> and <code>b/</code> prefixes.</p></div>   <div class="paragraph"><p>The similarity index is the percentage of unchanged lines, and   the dissimilarity index is the percentage of changed lines. It   is a rounded down integer, followed by a percent sign. The  @@ -2752,26 +2760,26 @@  <li>   <p>   TAB, LF, double quote and backslash characters in pathnames  - are represented as <tt>\t</tt>, <tt>\n</tt>, <tt>\"</tt> and <tt>\\</tt>, respectively.  + are represented as <code>\t</code>, <code>\n</code>, <code>\"</code> and <code>\\</code>, respectively.   If there is need for such substitution then the whole   pathname is put in double quotes.   </p>   </li>   <li>   <p>  -All the <tt>file1</tt> files in the output refer to files before the  - commit, and all the <tt>file2</tt> files refer to files after the commit.  +All the <code>file1</code> files in the output refer to files before the  + commit, and all the <code>file2</code> files refer to files after the commit.   It is incorrect to apply each change to each file sequentially. For   example, this patch will swap a and b:   </p>   <div class="literalblock">   <div class="content">  -<pre><tt>diff --git a/a b/b  +<pre><code>diff --git a/a b/b   rename from a   rename to b   diff --git a/b b/a   rename from b  -rename to a</tt></pre>  +rename to a</code></pre>   </div></div>   </li>   </ol></div>  @@ -2780,7 +2788,7 @@  <div class="sect1">   <h2 id="_combined_diff_format">combined diff format</h2>   <div class="sectionbody">  -<div class="paragraph"><p>Any diff-generating command can take the &#8216;-c` or <tt>--cc</tt> option to  +<div class="paragraph"><p>Any diff-generating command can take the &#8216;-c` or <code>--cc</code> option to   produce a <em>combined diff</em> when showing a merge. This is the default   format when showing merges with <a href="git-diff.html">git-diff(1)</a> or   <a href="git-show.html">git-show(1)</a>. Note also that you can give the `-m&#8217; option to any  @@ -2789,7 +2797,7 @@  <div class="paragraph"><p>A <em>combined diff</em> format looks like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>diff --combined describe.c  +<pre><code>diff --combined describe.c   index fabadb8,cc95eb0..4866510   --- a/describe.c   +++ b/describe.c  @@ -2815,7 +2823,7 @@  +   if (!initialized) {   initialized = 1;  - for_each_ref(get_name);</tt></pre>  + for_each_ref(get_name);</code></pre>   </div></div>   <div class="olist arabic"><ol class="arabic">   <li>  @@ -2825,12 +2833,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>diff --combined file</tt></pre>  +<pre><code>diff --combined file</code></pre>   </div></div>   <div class="paragraph"><p>or like this (when <em>--cc</em> option is used):</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>diff --cc file</tt></pre>  +<pre><code>diff --cc file</code></pre>   </div></div>   </li>   <li>  @@ -2840,12 +2848,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>index &lt;hash&gt;,&lt;hash&gt;..&lt;hash&gt;  +<pre><code>index &lt;hash&gt;,&lt;hash&gt;..&lt;hash&gt;   mode &lt;mode&gt;,&lt;mode&gt;..&lt;mode&gt;   new file mode &lt;mode&gt;  -deleted file mode &lt;mode&gt;,&lt;mode&gt;</tt></pre>  +deleted file mode &lt;mode&gt;,&lt;mode&gt;</code></pre>   </div></div>  -<div class="paragraph"><p>The <tt>mode &lt;mode&gt;,&lt;mode&gt;..&lt;mode&gt;</tt> line appears only if at least one of  +<div class="paragraph"><p>The <code>mode &lt;mode&gt;,&lt;mode&gt;..&lt;mode&gt;</code> line appears only if at least one of   the &lt;mode&gt; is different from the rest. Extended headers with   information about detected contents movement (renames and   copying detection) are designed to work with diff of two  @@ -2857,49 +2865,49 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>--- a/file  -+++ b/file</tt></pre>  +<pre><code>--- a/file  ++++ b/file</code></pre>   </div></div>   <div class="paragraph"><p>Similar to two-line header for traditional <em>unified</em> diff  -format, <tt>/dev/null</tt> is used to signal created or deleted  +format, <code>/dev/null</code> is used to signal created or deleted   files.</p></div>   </li>   <li>   <p>   Chunk header format is modified to prevent people from  - accidentally feeding it to <tt>patch -p1</tt>. Combined diff format  + accidentally feeding it to <code>patch -p1</code>. Combined diff format   was created for review of merge commit changes, and was not   meant for apply. The change is similar to the change in the   extended <em>index</em> header:   </p>   <div class="literalblock">   <div class="content">  -<pre><tt>@@@ &lt;from-file-range&gt; &lt;from-file-range&gt; &lt;to-file-range&gt; @@@</tt></pre>  +<pre><code>@@@ &lt;from-file-range&gt; &lt;from-file-range&gt; &lt;to-file-range&gt; @@@</code></pre>   </div></div>  -<div class="paragraph"><p>There are (number of parents + 1) <tt>@</tt> characters in the chunk  +<div class="paragraph"><p>There are (number of parents + 1) <code>@</code> characters in the chunk   header for combined diff format.</p></div>   </li>   </ol></div>   <div class="paragraph"><p>Unlike the traditional <em>unified</em> diff format, which shows two  -files A and B with a single column that has <tt>-</tt> (minus&#8201;&#8212;&#8201;appears in A but removed in B), <tt>+</tt> (plus&#8201;&#8212;&#8201;missing in A but  -added to B), or <tt>" "</tt> (space&#8201;&#8212;&#8201;unchanged) prefix, this format  +files A and B with a single column that has <code>-</code> (minus&#8201;&#8212;&#8201;appears in A but removed in B), <code>+</code> (plus&#8201;&#8212;&#8201;missing in A but  +added to B), or <code>" "</code> (space&#8201;&#8212;&#8201;unchanged) prefix, this format   compares two or more files file1, file2,&#8230; with one file X, and   shows how X differs from each of fileN. One column for each of   fileN is prepended to the output line to note how X&#8217;s line is   different from it.</p></div>  -<div class="paragraph"><p>A <tt>-</tt> character in the column N means that the line appears in  -fileN but it does not appear in the result. A <tt>+</tt> character  +<div class="paragraph"><p>A <code>-</code> character in the column N means that the line appears in  +fileN but it does not appear in the result. A <code>+</code> character   in the column N means that the line appears in the result,   and fileN does not have that line (in other words, the line was   added, from the point of view of that parent).</p></div>   <div class="paragraph"><p>In the above example output, the function signature was changed  -from both files (hence two <tt>-</tt> removals from both file1 and  -file2, plus <tt>++</tt> to mean one line that was added does not appear  +from both files (hence two <code>-</code> removals from both file1 and  +file2, plus <code>++</code> to mean one line that was added does not appear   in either file1 or file2). Also eight other lines are the same  -from file1 but do not appear in file2 (hence prefixed with <tt>+</tt>).</p></div>  -<div class="paragraph"><p>When shown by <tt>git diff-tree -c</tt>, it compares the parents of a  +from file1 but do not appear in file2 (hence prefixed with <code>+</code>).</p></div>  +<div class="paragraph"><p>When shown by <code>git diff-tree -c</code>, it compares the parents of a   merge commit with the merge result (i.e. file1..fileN are the  -parents). When shown by <tt>git diff-files -c</tt>, it compares the  +parents). When shown by <code>git diff-files -c</code>, it compares the   two unresolved merge parents with the working tree file   (i.e. file1 is stage 2 aka "our version", file2 is stage 3 aka   "their version").</p></div>  @@ -2908,25 +2916,25 @@  <div class="sect1">   <h2 id="_other_diff_formats">other diff formats</h2>   <div class="sectionbody">  -<div class="paragraph"><p>The <tt>--summary</tt> option describes newly added, deleted, renamed and  -copied files. The <tt>--stat</tt> option adds diffstat(1) graph to the  +<div class="paragraph"><p>The <code>--summary</code> option describes newly added, deleted, renamed and  +copied files. The <code>--stat</code> option adds diffstat(1) graph to the   output. These options can be combined with other options, such as  -<tt>-p</tt>, and are meant for human consumption.</p></div>  -<div class="paragraph"><p>When showing a change that involves a rename or a copy, <tt>--stat</tt> output  +<code>-p</code>, and are meant for human consumption.</p></div>  +<div class="paragraph"><p>When showing a change that involves a rename or a copy, <code>--stat</code> output   formats the pathnames compactly by combining common prefix and suffix of  -the pathnames. For example, a change that moves <tt>arch/i386/Makefile</tt> to  -<tt>arch/x86/Makefile</tt> while modifying 4 lines will be shown like this:</p></div>  +the pathnames. For example, a change that moves <code>arch/i386/Makefile</code> to  +<code>arch/x86/Makefile</code> while modifying 4 lines will be shown like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>arch/{i386 =&gt; x86}/Makefile | 4 +--</tt></pre>  +<pre><code>arch/{i386 =&gt; x86}/Makefile | 4 +--</code></pre>   </div></div>  -<div class="paragraph"><p>The <tt>--numstat</tt> option gives the diffstat(1) information but is designed  -for easier machine consumption. An entry in <tt>--numstat</tt> output looks  +<div class="paragraph"><p>The <code>--numstat</code> option gives the diffstat(1) information but is designed  +for easier machine consumption. An entry in <code>--numstat</code> output looks   like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>1 2 README  -3 1 arch/{i386 =&gt; x86}/Makefile</tt></pre>  +<pre><code>1 2 README  +3 1 arch/{i386 =&gt; x86}/Makefile</code></pre>   </div></div>   <div class="paragraph"><p>That is, from left to right:</p></div>   <div class="olist arabic"><ol class="arabic">  @@ -2961,11 +2969,11 @@  </p>   </li>   </ol></div>  -<div class="paragraph"><p>When <tt>-z</tt> output option is in effect, the output is formatted this way:</p></div>  +<div class="paragraph"><p>When <code>-z</code> output option is in effect, the output is formatted this way:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>1 2 README NUL  -3 1 NUL arch/i386/Makefile NUL arch/x86/Makefile NUL</tt></pre>  +<pre><code>1 2 README NUL  +3 1 NUL arch/i386/Makefile NUL arch/x86/Makefile NUL</code></pre>   </div></div>   <div class="paragraph"><p>That is:</p></div>   <div class="olist arabic"><ol class="arabic">  @@ -3015,11 +3023,11 @@  </p>   </li>   </ol></div>  -<div class="paragraph"><p>The extra <tt>NUL</tt> before the preimage path in renamed case is to allow  +<div class="paragraph"><p>The extra <code>NUL</code> before the preimage path in renamed case is to allow   scripts that read the output to tell if the current record being read is   a single-path record or a rename/copy record without reading ahead.  -After reading added and deleted lines, reading up to <tt>NUL</tt> would yield  -the pathname, but if that is <tt>NUL</tt>, the record will show two paths.</p></div>  +After reading added and deleted lines, reading up to <code>NUL</code> would yield  +the pathname, but if that is <code>NUL</code>, the record will show two paths.</p></div>   </div>   </div>   <div class="sect1">  
diff --git a/git-fast-export.html b/git-fast-export.html index de3a108..27c1cc2 100644 --- a/git-fast-export.html +++ b/git-fast-export.html 
@@ -3,7 +3,7 @@  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   <head>   <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />  -<meta name="generator" content="AsciiDoc 8.6.6" />  +<meta name="generator" content="AsciiDoc 8.6.9" />   <title>git-fast-export(1)</title>   <style type="text/css">   /* Shared CSS for AsciiDoc xhtml11 and html5 backends */  @@ -87,10 +87,16 @@  ul > li { color: #aaa; }   ul > li > * { color: black; }    -pre {  +.monospaced, code, pre {  + font-family: "Courier New", Courier, monospace;  + font-size: inherit;  + color: navy;   padding: 0;   margin: 0;   }  +pre {  + white-space: pre-wrap;  +}     #author {   color: #527bbd;  @@ -219,7 +225,7 @@  }     div.imageblock div.content { padding-left: 0; }  -span.image img { border-style: none; }  +span.image img { border-style: none; vertical-align: text-bottom; }   a.image:visited { color: white; }     dl {  @@ -349,7 +355,7 @@  margin-bottom: 0.1em;   }    -div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {  +div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {   margin-top: 0;   margin-bottom: 0;   }  @@ -407,18 +413,14 @@  span.overline { text-decoration: overline; }   span.line-through { text-decoration: line-through; }    +div.unbreakable { page-break-inside: avoid; }  +     /*   * xhtml11 specific   *   * */    -tt {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   div.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -452,12 +454,6 @@  *   * */    -.monospaced {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   table.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -537,6 +533,8 @@  @media print {   body.manpage div#toc { display: none; }   }  +  +   </style>   <script type="text/javascript">   /*<![CDATA[*/  @@ -581,7 +579,7 @@    function tocEntries(el, toclevels) {   var result = new Array;  - var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');  + var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');   // Function that scans the DOM tree for header elements (the DOM2   // nodeIterator API would be a better technique but not supported by all   // browsers).  @@ -610,7 +608,7 @@  var i;   for (i = 0; i < toc.childNodes.length; i++) {   var entry = toc.childNodes[i];  - if (entry.nodeName == 'div'  + if (entry.nodeName.toLowerCase() == 'div'   && entry.getAttribute("class")   && entry.getAttribute("class").match(/^toclevel/))   tocEntriesToRemove.push(entry);  @@ -656,7 +654,7 @@  var entriesToRemove = [];   for (i = 0; i < noteholder.childNodes.length; i++) {   var entry = noteholder.childNodes[i];  - if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")  + if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")   entriesToRemove.push(entry);   }   for (i = 0; i < entriesToRemove.length; i++) {  @@ -830,7 +828,7 @@  <dd>   <p>   Dumps the internal marks table to &lt;file&gt; when complete.  - Marks are written one per line as <tt>:markid SHA-1</tt>. Only marks  + Marks are written one per line as <code>:markid SHA-1</code>. Only marks   for revisions are dumped; marks for blobs are ignored.   Backends can use this file to validate imports after they   have been completed, or to save the marks table across  @@ -900,6 +898,16 @@  </p>   </dd>   <dt class="hdlist1">  +--anonymize  +</dt>  +<dd>  +<p>  + Anonymize the contents of the repository while still retaining  + the shape of the history and stored tree. See the section on  + <code>ANONYMIZING</code> below.  +</p>  +</dd>  +<dt class="hdlist1">   --refspec   </dt>   <dd>  @@ -915,7 +923,7 @@  <p>   A list of arguments, acceptable to <em>git rev-parse</em> and   <em>git rev-list</em>, that specifies the specific objects and references  - to export. For example, <tt>master~10..master</tt> causes the  + to export. For example, <code>master~10..master</code> causes the   current master reference to be exported along with all objects   added since its 10th ancestor commit.   </p>  @@ -928,16 +936,16 @@  <div class="sectionbody">   <div class="listingblock">   <div class="content">  -<pre><tt>$ git fast-export --all | (cd /empty/repository &amp;&amp; git fast-import)</tt></pre>  +<pre><code>$ git fast-export --all | (cd /empty/repository &amp;&amp; git fast-import)</code></pre>   </div></div>   <div class="paragraph"><p>This will export the whole repository and import it into the existing   empty repository. Except for reencoding commits that are not in   UTF-8, it would be a one-to-one mirror.</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git fast-export master~5..master |  +<pre><code>$ git fast-export master~5..master |   sed "s|refs/heads/master|refs/heads/other|" |  - git fast-import</tt></pre>  + git fast-import</code></pre>   </div></div>   <div class="paragraph"><p>This makes a new branch called <em>other</em> from <em>master~5..master</em>   (i.e. if <em>master</em> has linear history, it will take the last 5 commits).</p></div>  @@ -947,6 +955,57 @@  </div>   </div>   <div class="sect1">  +<h2 id="_anonymizing">ANONYMIZING</h2>  +<div class="sectionbody">  +<div class="paragraph"><p>If the <code>--anonymize</code> option is given, git will attempt to remove all  +identifying information from the repository while still retaining enough  +of the original tree and history patterns to reproduce some bugs. The  +goal is that a git bug which is found on a private repository will  +persist in the anonymized repository, and the latter can be shared with  +git developers to help solve the bug.</p></div>  +<div class="paragraph"><p>With this option, git will replace all refnames, paths, blob contents,  +commit and tag messages, names, and email addresses in the output with  +anonymized data. Two instances of the same string will be replaced  +equivalently (e.g., two commits with the same author will have the same  +anonymized author in the output, but bear no resemblance to the original  +author string). The relationship between commits, branches, and tags is  +retained, as well as the commit timestamps (but the commit messages and  +refnames bear no resemblance to the originals). The relative makeup of  +the tree is retained (e.g., if you have a root tree with 10 files and 3  +trees, so will the output), but their names and the contents of the  +files will be replaced.</p></div>  +<div class="paragraph"><p>If you think you have found a git bug, you can start by exporting an  +anonymized stream of the whole repository:</p></div>  +<div class="listingblock">  +<div class="content">  +<pre><code>$ git fast-export --anonymize --all &gt;anon-stream</code></pre>  +</div></div>  +<div class="paragraph"><p>Then confirm that the bug persists in a repository created from that  +stream (many bugs will not, as they really do depend on the exact  +repository contents):</p></div>  +<div class="listingblock">  +<div class="content">  +<pre><code>$ git init anon-repo  +$ cd anon-repo  +$ git fast-import &lt;../anon-stream  +$ ... test your bug ...</code></pre>  +</div></div>  +<div class="paragraph"><p>If the anonymized repository shows the bug, it may be worth sharing  +<code>anon-stream</code> along with a regular bug report. Note that the anonymized  +stream compresses very well, so gzipping it is encouraged. If you want  +to examine the stream to see that it does not contain any private data,  +you can peruse it directly before sending. You may also want to try:</p></div>  +<div class="listingblock">  +<div class="content">  +<pre><code>$ perl -pe 's/\d+/X/g' &lt;anon-stream | sort -u | less</code></pre>  +</div></div>  +<div class="paragraph"><p>which shows all of the unique lines (with numbers converted to "X", to  +collapse "User 0", "User 1", etc into "User X"). This produces a much  +smaller output, and it is usually easy to quickly confirm that there is  +no private data in the stream.</p></div>  +</div>  +</div>  +<div class="sect1">   <h2 id="_limitations">Limitations</h2>   <div class="sectionbody">   <div class="paragraph"><p>Since <em>git fast-import</em> cannot tag trees, you will not be  @@ -964,7 +1023,7 @@  <div id="footnotes"><hr /></div>   <div id="footer">   <div id="footer-text">  -Last updated 2014-06-16 14:13:22 PDT  +Last updated 2014-09-19 15:32:09 PDT   </div>   </div>   </body>  
diff --git a/git-fast-export.txt b/git-fast-export.txt index 221506b..dbe9a46 100644 --- a/git-fast-export.txt +++ b/git-fast-export.txt 
@@ -105,6 +105,11 @@ 	in the commit (as opposed to just listing the files which are 	different from the commit's first parent).   +--anonymize:: +	Anonymize the contents of the repository while still retaining +	the shape of the history and stored tree. See the section on +	`ANONYMIZING` below. +  --refspec:: 	Apply the specified refspec to each ref exported. Multiple of them can 	be specified. @@ -141,6 +146,62 @@  'refs/heads/master'.     +ANONYMIZING +----------- + +If the `--anonymize` option is given, git will attempt to remove all +identifying information from the repository while still retaining enough +of the original tree and history patterns to reproduce some bugs. The +goal is that a git bug which is found on a private repository will +persist in the anonymized repository, and the latter can be shared with +git developers to help solve the bug. + +With this option, git will replace all refnames, paths, blob contents, +commit and tag messages, names, and email addresses in the output with +anonymized data. Two instances of the same string will be replaced +equivalently (e.g., two commits with the same author will have the same +anonymized author in the output, but bear no resemblance to the original +author string). The relationship between commits, branches, and tags is +retained, as well as the commit timestamps (but the commit messages and +refnames bear no resemblance to the originals). The relative makeup of +the tree is retained (e.g., if you have a root tree with 10 files and 3 +trees, so will the output), but their names and the contents of the +files will be replaced. + +If you think you have found a git bug, you can start by exporting an +anonymized stream of the whole repository: + +--------------------------------------------------- +$ git fast-export --anonymize --all >anon-stream +--------------------------------------------------- + +Then confirm that the bug persists in a repository created from that +stream (many bugs will not, as they really do depend on the exact +repository contents): + +--------------------------------------------------- +$ git init anon-repo +$ cd anon-repo +$ git fast-import <../anon-stream +$ ... test your bug ... +--------------------------------------------------- + +If the anonymized repository shows the bug, it may be worth sharing +`anon-stream` along with a regular bug report. Note that the anonymized +stream compresses very well, so gzipping it is encouraged. If you want +to examine the stream to see that it does not contain any private data, +you can peruse it directly before sending. You may also want to try: + +--------------------------------------------------- +$ perl -pe 's/\d+/X/g' <anon-stream | sort -u | less +--------------------------------------------------- + +which shows all of the unique lines (with numbers converted to "X", to +collapse "User 0", "User 1", etc into "User X"). This produces a much +smaller output, and it is usually easy to quickly confirm that there is +no private data in the stream. + +  Limitations  -----------   
diff --git a/git-log.html b/git-log.html index e8b5136..b834bb9 100644 --- a/git-log.html +++ b/git-log.html 
@@ -3,7 +3,7 @@  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   <head>   <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />  -<meta name="generator" content="AsciiDoc 8.6.6" />  +<meta name="generator" content="AsciiDoc 8.6.9" />   <title>git-log(1)</title>   <style type="text/css">   /* Shared CSS for AsciiDoc xhtml11 and html5 backends */  @@ -87,10 +87,16 @@  ul > li { color: #aaa; }   ul > li > * { color: black; }    -pre {  +.monospaced, code, pre {  + font-family: "Courier New", Courier, monospace;  + font-size: inherit;  + color: navy;   padding: 0;   margin: 0;   }  +pre {  + white-space: pre-wrap;  +}     #author {   color: #527bbd;  @@ -219,7 +225,7 @@  }     div.imageblock div.content { padding-left: 0; }  -span.image img { border-style: none; }  +span.image img { border-style: none; vertical-align: text-bottom; }   a.image:visited { color: white; }     dl {  @@ -349,7 +355,7 @@  margin-bottom: 0.1em;   }    -div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {  +div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {   margin-top: 0;   margin-bottom: 0;   }  @@ -407,18 +413,14 @@  span.overline { text-decoration: overline; }   span.line-through { text-decoration: line-through; }    +div.unbreakable { page-break-inside: avoid; }  +     /*   * xhtml11 specific   *   * */    -tt {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   div.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -452,12 +454,6 @@  *   * */    -.monospaced {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   table.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -537,6 +533,8 @@  @media print {   body.manpage div#toc { display: none; }   }  +  +   </style>   <script type="text/javascript">   /*<![CDATA[*/  @@ -581,7 +579,7 @@    function tocEntries(el, toclevels) {   var result = new Array;  - var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');  + var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');   // Function that scans the DOM tree for header elements (the DOM2   // nodeIterator API would be a better technique but not supported by all   // browsers).  @@ -610,7 +608,7 @@  var i;   for (i = 0; i < toc.childNodes.length; i++) {   var entry = toc.childNodes[i];  - if (entry.nodeName == 'div'  + if (entry.nodeName.toLowerCase() == 'div'   && entry.getAttribute("class")   && entry.getAttribute("class").match(/^toclevel/))   tocEntriesToRemove.push(entry);  @@ -656,7 +654,7 @@  var entriesToRemove = [];   for (i = 0; i < noteholder.childNodes.length; i++) {   var entry = noteholder.childNodes[i];  - if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")  + if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")   entriesToRemove.push(entry);   }   for (i = 0; i < entriesToRemove.length; i++) {  @@ -759,9 +757,9 @@  <h2 id="_description">DESCRIPTION</h2>   <div class="sectionbody">   <div class="paragraph"><p>Shows the commit logs.</p></div>  -<div class="paragraph"><p>The command takes options applicable to the <tt>git rev-list</tt>  +<div class="paragraph"><p>The command takes options applicable to the <code>git rev-list</code>   command to control what is shown and how, and options applicable to  -the <tt>git diff-*</tt> commands to control how the changes  +the <code>git diff-*</code> commands to control how the changes   each commit introduces are shown.</p></div>   </div>   </div>  @@ -817,14 +815,14 @@  </dt>   <dd>   <p>  - Without this flag, <tt>git log -p &lt;path&gt;...</tt> shows commits that  + Without this flag, <code>git log -p &lt;path&gt;...</code> shows commits that   touch the specified paths, and diffs about the same specified   paths. With this, the full diff is shown for commits that touch   the specified paths; this means that "&lt;path&gt;&#8230;" limits only   commits, and doesn&#8217;t limit diff for those commits.   </p>   <div class="paragraph"><p>Note that this affects all diff-based output types, e.g. those  -produced by <tt>--stat</tt>, etc.</p></div>  +produced by <code>--stat</code>, etc.</p></div>   </dd>   <dt class="hdlist1">   --log-size  @@ -833,7 +831,7 @@  <p>   Include a line &#8220;log size &lt;number&gt;&#8221; in the output for each commit,   where &lt;number&gt; is the length of that commit&#8217;s message in bytes.  - Intended to speed up tools that read log messages from <tt>git log</tt>  + Intended to speed up tools that read log messages from <code>git log</code>   output by allowing them to allocate space in advance.   </p>   </dd>  @@ -867,7 +865,7 @@  </p>   <div class="paragraph"><p>This form will use the first line matching the given   POSIX regex. If &lt;start&gt; is a regex, it will search from the end of  -the previous <tt>-L</tt> range, if any, otherwise from the start of file.  +the previous <code>-L</code> range, if any, otherwise from the start of file.   If &lt;start&gt; is &#8220;^/regex/&#8221;, it will search from the start of file.   If &lt;end&gt; is a regex, it will search   starting at the line given by &lt;start&gt;.</p></div>  @@ -882,7 +880,7 @@  </ul></div>   <div class="paragraph"><p>If &#8220;:&lt;regex&gt;&#8221; is given in place of &lt;start&gt; and &lt;end&gt;, it denotes the range   from the first funcname line that matches &lt;regex&gt;, up to the next  -funcname line. &#8220;:&lt;regex&gt;&#8221; searches from the end of the previous <tt>-L</tt> range,  +funcname line. &#8220;:&lt;regex&gt;&#8221; searches from the end of the previous <code>-L</code> range,   if any, otherwise from the start of file.   &#8220;^:&lt;regex&gt;&#8221; searches from the start of file.</p></div>   </dd>  @@ -892,10 +890,10 @@  <dd>   <p>   Show only commits in the specified revision range. When no  - &lt;revision range&gt; is specified, it defaults to <tt>HEAD</tt> (i.e. the  - whole history leading to the current commit). <tt>origin..HEAD</tt>  + &lt;revision range&gt; is specified, it defaults to <code>HEAD</code> (i.e. the  + whole history leading to the current commit). <code>origin..HEAD</code>   specifies all the commits reachable from the current commit  - (i.e. <tt>HEAD</tt>), but not from <tt>origin</tt>. For a complete list of  + (i.e. <code>HEAD</code>), but not from <code>origin</code>. For a complete list of   ways to spell &lt;revision range&gt;, see the <em>Specifying Ranges</em>   section of <a href="gitrevisions.html">gitrevisions(7)</a>.   </p>  @@ -920,11 +918,11 @@  special notations explained in the description, additional commit   limiting may be applied.</p></div>   <div class="paragraph"><p>Using more options generally further limits the output (e.g.  -<tt>--since=&lt;date1&gt;</tt> limits to commits newer than <tt>&lt;date1&gt;</tt>, and using it  -with <tt>--grep=&lt;pattern&gt;</tt> further limits to commits whose log message  -has a line that matches <tt>&lt;pattern&gt;</tt>), unless otherwise noted.</p></div>  +<code>--since=&lt;date1&gt;</code> limits to commits newer than <code>&lt;date1&gt;</code>, and using it  +with <code>--grep=&lt;pattern&gt;</code> further limits to commits whose log message  +has a line that matches <code>&lt;pattern&gt;</code>), unless otherwise noted.</p></div>   <div class="paragraph"><p>Note that these are applied before commit  -ordering and formatting options, such as <tt>--reverse</tt>.</p></div>  +ordering and formatting options, such as <code>--reverse</code>.</p></div>   <div class="openblock">   <div class="content">   <div class="dlist"><dl>  @@ -982,9 +980,9 @@  <p>   Limit the commits output to ones with author/committer   header lines that match the specified pattern (regular  - expression). With more than one <tt>--author=&lt;pattern&gt;</tt>,  + expression). With more than one <code>--author=&lt;pattern&gt;</code>,   commits whose author matches any of the given patterns are  - chosen (similarly for multiple <tt>--committer=&lt;pattern&gt;</tt>).  + chosen (similarly for multiple <code>--committer=&lt;pattern&gt;</code>).   </p>   </dd>   <dt class="hdlist1">  @@ -994,9 +992,9 @@  <p>   Limit the commits output to ones with reflog entries that   match the specified pattern (regular expression). With  - more than one <tt>--grep-reflog</tt>, commits whose reflog message  + more than one <code>--grep-reflog</code>, commits whose reflog message   matches any of the given patterns are chosen. It is an  - error to use this option unless <tt>--walk-reflogs</tt> is in use.  + error to use this option unless <code>--walk-reflogs</code> is in use.   </p>   </dd>   <dt class="hdlist1">  @@ -1006,11 +1004,11 @@  <p>   Limit the commits output to ones with log message that   matches the specified pattern (regular expression). With  - more than one <tt>--grep=&lt;pattern&gt;</tt>, commits whose message  + more than one <code>--grep=&lt;pattern&gt;</code>, commits whose message   matches any of the given patterns are chosen (but see  - <tt>--all-match</tt>).  + <code>--all-match</code>).   </p>  -<div class="paragraph"><p>When <tt>--show-notes</tt> is in effect, the message from the notes as  +<div class="paragraph"><p>When <code>--show-notes</code> is in effect, the message from the notes as   if it is part of the log message.</p></div>   </dd>   <dt class="hdlist1">  @@ -1018,7 +1016,7 @@  </dt>   <dd>   <p>  - Limit the commits output to ones that match all given <tt>--grep</tt>,  + Limit the commits output to ones that match all given <code>--grep</code>,   instead of ones that match at least one.   </p>   </dd>  @@ -1089,7 +1087,7 @@  </dt>   <dd>   <p>  - Print only merge commits. This is exactly the same as <tt>--min-parents=2</tt>.  + Print only merge commits. This is exactly the same as <code>--min-parents=2</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1098,7 +1096,7 @@  <dd>   <p>   Do not print commits with more than one parent. This is  - exactly the same as <tt>--max-parents=1</tt>.  + exactly the same as <code>--max-parents=1</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1116,13 +1114,13 @@  <dd>   <p>   Show only commits which have at least (or at most) that many parent  - commits. In particular, <tt>--max-parents=1</tt> is the same as <tt>--no-merges</tt>,  - <tt>--min-parents=2</tt> is the same as <tt>--merges</tt>. <tt>--max-parents=0</tt>  - gives all root commits and <tt>--min-parents=3</tt> all octopus merges.  + commits. In particular, <code>--max-parents=1</code> is the same as <code>--no-merges</code>,  + <code>--min-parents=2</code> is the same as <code>--merges</code>. <code>--max-parents=0</code>  + gives all root commits and <code>--min-parents=3</code> all octopus merges.   </p>  -<div class="paragraph"><p><tt>--no-min-parents</tt> and <tt>--no-max-parents</tt> reset these limits (to no limit)  -again. Equivalent forms are <tt>--min-parents=0</tt> (any commit has 0 or more  -parents) and <tt>--max-parents=-1</tt> (negative numbers denote no upper limit).</p></div>  +<div class="paragraph"><p><code>--no-min-parents</code> and <code>--no-max-parents</code> reset these limits (to no limit)  +again. Equivalent forms are <code>--min-parents=0</code> (any commit has 0 or more  +parents) and <code>--max-parents=-1</code> (negative numbers denote no upper limit).</p></div>   </dd>   <dt class="hdlist1">   --first-parent  @@ -1144,7 +1142,7 @@  <dd>   <p>   Reverses the meaning of the <em>&#94;</em> prefix (or lack thereof)  - for all following revision specifiers, up to the next <tt>--not</tt>.  + for all following revision specifiers, up to the next <code>--not</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1152,7 +1150,7 @@  </dt>   <dd>   <p>  - Pretend as if all the refs in <tt>refs/</tt> are listed on the  + Pretend as if all the refs in <code>refs/</code> are listed on the   command line as <em>&lt;commit&gt;</em>.   </p>   </dd>  @@ -1161,7 +1159,7 @@  </dt>   <dd>   <p>  - Pretend as if all the refs in <tt>refs/heads</tt> are listed  + Pretend as if all the refs in <code>refs/heads</code> are listed   on the command line as <em>&lt;commit&gt;</em>. If <em>&lt;pattern&gt;</em> is given, limit   branches to ones matching given shell glob. If pattern lacks <em>?</em>,   <em>&#42;</em>, or <em>[</em>, <em>/&#42;</em> at the end is implied.  @@ -1172,7 +1170,7 @@  </dt>   <dd>   <p>  - Pretend as if all the refs in <tt>refs/tags</tt> are listed  + Pretend as if all the refs in <code>refs/tags</code> are listed   on the command line as <em>&lt;commit&gt;</em>. If <em>&lt;pattern&gt;</em> is given, limit   tags to ones matching given shell glob. If pattern lacks <em>?</em>, <em>&#42;</em>,   or <em>[</em>, <em>/&#42;</em> at the end is implied.  @@ -1183,7 +1181,7 @@  </dt>   <dd>   <p>  - Pretend as if all the refs in <tt>refs/remotes</tt> are listed  + Pretend as if all the refs in <code>refs/remotes</code> are listed   on the command line as <em>&lt;commit&gt;</em>. If <em>&lt;pattern&gt;</em> is given, limit   remote-tracking branches to ones matching given shell glob.   If pattern lacks <em>?</em>, <em>&#42;</em>, or <em>[</em>, <em>/&#42;</em> at the end is implied.  @@ -1205,17 +1203,17 @@  </dt>   <dd>   <p>  - Do not include refs matching <em>&lt;glob-pattern&gt;</em> that the next <tt>--all</tt>,  - <tt>--branches</tt>, <tt>--tags</tt>, <tt>--remotes</tt>, or <tt>--glob</tt> would otherwise  + Do not include refs matching <em>&lt;glob-pattern&gt;</em> that the next <code>--all</code>,  + <code>--branches</code>, <code>--tags</code>, <code>--remotes</code>, or <code>--glob</code> would otherwise   consider. Repetitions of this option accumulate exclusion patterns  - up to the next <tt>--all</tt>, <tt>--branches</tt>, <tt>--tags</tt>, <tt>--remotes</tt>, or  - <tt>--glob</tt> option (other options or arguments do not clear  + up to the next <code>--all</code>, <code>--branches</code>, <code>--tags</code>, <code>--remotes</code>, or  + <code>--glob</code> option (other options or arguments do not clear   accumlated patterns).   </p>  -<div class="paragraph"><p>The patterns given should not begin with <tt>refs/heads</tt>, <tt>refs/tags</tt>, or  -<tt>refs/remotes</tt> when applied to <tt>--branches</tt>, <tt>--tags</tt>, or <tt>--remotes</tt>,  -respectively, and they must begin with <tt>refs/</tt> when applied to <tt>--glob</tt>  -or <tt>--all</tt>. If a trailing <em>/&#42;</em> is intended, it must be given  +<div class="paragraph"><p>The patterns given should not begin with <code>refs/heads</code>, <code>refs/tags</code>, or  +<code>refs/remotes</code> when applied to <code>--branches</code>, <code>--tags</code>, or <code>--remotes</code>,  +respectively, and they must begin with <code>refs/</code> when applied to <code>--glob</code>  +or <code>--all</code>. If a trailing <em>/&#42;</em> is intended, it must be given   explicitly.</p></div>   </dd>   <dt class="hdlist1">  @@ -1232,9 +1230,9 @@  </dt>   <dd>   <p>  - Pretend as if the bad bisection ref <tt>refs/bisect/bad</tt>  - was listed and as if it was followed by <tt>--not</tt> and the good  - bisection refs <tt>refs/bisect/good-*</tt> on the command  + Pretend as if the bad bisection ref <code>refs/bisect/bad</code>  + was listed and as if it was followed by <code>--not</code> and the good  + bisection refs <code>refs/bisect/good-*</code> on the command   line.   </p>   </dd>  @@ -1254,8 +1252,8 @@  </dt>   <dd>   <p>  - Like <tt>--cherry-pick</tt> (see below) but mark equivalent commits  - with <tt>=</tt> rather than omitting them, and inequivalent ones with <tt>+</tt>.  + Like <code>--cherry-pick</code> (see below) but mark equivalent commits  + with <code>=</code> rather than omitting them, and inequivalent ones with <code>+</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1267,10 +1265,10 @@  another commit on the &#8220;other side&#8221; when the set of   commits are limited with symmetric difference.   </p>  -<div class="paragraph"><p>For example, if you have two branches, <tt>A</tt> and <tt>B</tt>, a usual way  +<div class="paragraph"><p>For example, if you have two branches, <code>A</code> and <code>B</code>, a usual way   to list all commits on only one side of them is with  -<tt>--left-right</tt> (see the example below in the description of  -the <tt>--left-right</tt> option). However, it shows the commits that were  +<code>--left-right</code> (see the example below in the description of  +the <code>--left-right</code> option). However, it shows the commits that were   cherry-picked from the other branch (for example, &#8220;3rd on b&#8221; may be   cherry-picked from branch A). With this option, such pairs of commits are   excluded from the output.</p></div>  @@ -1284,13 +1282,13 @@  <dd>   <p>   List only commits on the respective side of a symmetric range,  - i.e. only those which would be marked <tt>&lt;</tt> resp. <tt>&gt;</tt> by  - <tt>--left-right</tt>.  + i.e. only those which would be marked <code>&lt;</code> resp. <code>&gt;</code> by  + <code>--left-right</code>.   </p>  -<div class="paragraph"><p>For example, <tt>--cherry-pick --right-only A...B</tt> omits those  -commits from <tt>B</tt> which are in <tt>A</tt> or are patch-equivalent to a commit in  -<tt>A</tt>. In other words, this lists the <tt>+</tt> commits from <tt>git cherry A B</tt>.  -More precisely, <tt>--cherry-pick --right-only --no-merges</tt> gives the exact  +<div class="paragraph"><p>For example, <code>--cherry-pick --right-only A...B</code> omits those  +commits from <code>B</code> which are in <code>A</code> or are patch-equivalent to a commit in  +<code>A</code>. In other words, this lists the <code>+</code> commits from <code>git cherry A B</code>.  +More precisely, <code>--cherry-pick --right-only --no-merges</code> gives the exact   list.</p></div>   </dd>   <dt class="hdlist1">  @@ -1298,11 +1296,11 @@  </dt>   <dd>   <p>  - A synonym for <tt>--right-only --cherry-mark --no-merges</tt>; useful to  + A synonym for <code>--right-only --cherry-mark --no-merges</code>; useful to   limit the output to the commits on our side and mark those that   have been applied to the other side of a forked history with  - <tt>git log --cherry upstream...mybranch</tt>, similar to  - <tt>git cherry upstream mybranch</tt>.  + <code>git log --cherry upstream...mybranch</code>, similar to  + <code>git cherry upstream mybranch</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1319,14 +1317,14 @@  exclude (that is, <em>&#94;commit</em>, <em>commit1..commit2</em>,   and <em>commit1...commit2</em> notations cannot be used).   </p>  -<div class="paragraph"><p>With <tt>--pretty</tt> format other than <tt>oneline</tt> (for obvious reasons),  +<div class="paragraph"><p>With <code>--pretty</code> format other than <code>oneline</code> (for obvious reasons),   this causes the output to have two extra lines of information   taken from the reflog. By default, <em>commit@{Nth}</em> notation is   used in the output. When the starting commit is specified as   <em>commit@{now}</em>, output also uses <em>commit@{timestamp}</em> notation  -instead. Under <tt>--pretty=oneline</tt>, the commit message is  +instead. Under <code>--pretty=oneline</code>, the commit message is   prefixed with this information on the same line.  -This option cannot be combined with <tt>--reverse</tt>.  +This option cannot be combined with <code>--reverse</code>.   See also <a href="git-reflog.html">git-reflog(1)</a>.</p></div>   </dd>   <dt class="hdlist1">  @@ -1344,7 +1342,7 @@  <dd>   <p>   Output excluded boundary commits. Boundary commits are  - prefixed with <tt>-</tt>.  + prefixed with <code>-</code>.   </p>   </dd>   </dl></div>  @@ -1419,7 +1417,7 @@  </dt>   <dd>   <p>  - Additional option to <tt>--full-history</tt> to remove some needless  + Additional option to <code>--full-history</code> to remove some needless   merges from the resulting history, as there are no selected   commits contributing to this merge.   </p>  @@ -1438,70 +1436,70 @@  </dd>   </dl></div>   <div class="paragraph"><p>A more detailed explanation follows.</p></div>  -<div class="paragraph"><p>Suppose you specified <tt>foo</tt> as the &lt;paths&gt;. We shall call commits  -that modify <tt>foo</tt> !TREESAME, and the rest TREESAME. (In a diff  -filtered for <tt>foo</tt>, they look different and equal, respectively.)</p></div>  +<div class="paragraph"><p>Suppose you specified <code>foo</code> as the &lt;paths&gt;. We shall call commits  +that modify <code>foo</code> !TREESAME, and the rest TREESAME. (In a diff  +filtered for <code>foo</code>, they look different and equal, respectively.)</p></div>   <div class="paragraph"><p>In the following, we will always refer to the same example history to   illustrate the differences between simplification settings. We assume  -that you are filtering for a file <tt>foo</tt> in this commit graph:</p></div>  +that you are filtering for a file <code>foo</code> in this commit graph:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> .-A---M---N---O---P---Q  +<pre><code> .-A---M---N---O---P---Q   / / / / / /   I B C D E Y   \ / / / / /  - `-------------' X</tt></pre>  + `-------------' X</code></pre>   </div></div>   <div class="paragraph"><p>The horizontal line of history A---Q is taken to be the first parent of   each merge. The commits are:</p></div>   <div class="ulist"><ul>   <li>   <p>  -<tt>I</tt> is the initial commit, in which <tt>foo</tt> exists with contents  - &#8220;asdf&#8221;, and a file <tt>quux</tt> exists with contents &#8220;quux&#8221;. Initial  - commits are compared to an empty tree, so <tt>I</tt> is !TREESAME.  +<code>I</code> is the initial commit, in which <code>foo</code> exists with contents  + &#8220;asdf&#8221;, and a file <code>quux</code> exists with contents &#8220;quux&#8221;. Initial  + commits are compared to an empty tree, so <code>I</code> is !TREESAME.   </p>   </li>   <li>   <p>  -In <tt>A</tt>, <tt>foo</tt> contains just &#8220;foo&#8221;.  +In <code>A</code>, <code>foo</code> contains just &#8220;foo&#8221;.   </p>   </li>   <li>   <p>  -<tt>B</tt> contains the same change as <tt>A</tt>. Its merge <tt>M</tt> is trivial and  +<code>B</code> contains the same change as <code>A</code>. Its merge <code>M</code> is trivial and   hence TREESAME to all parents.   </p>   </li>   <li>   <p>  -<tt>C</tt> does not change <tt>foo</tt>, but its merge <tt>N</tt> changes it to &#8220;foobar&#8221;,  +<code>C</code> does not change <code>foo</code>, but its merge <code>N</code> changes it to &#8220;foobar&#8221;,   so it is not TREESAME to any parent.   </p>   </li>   <li>   <p>  -<tt>D</tt> sets <tt>foo</tt> to &#8220;baz&#8221;. Its merge <tt>O</tt> combines the strings from  - <tt>N</tt> and <tt>D</tt> to &#8220;foobarbaz&#8221;; i.e., it is not TREESAME to any parent.  +<code>D</code> sets <code>foo</code> to &#8220;baz&#8221;. Its merge <code>O</code> combines the strings from  + <code>N</code> and <code>D</code> to &#8220;foobarbaz&#8221;; i.e., it is not TREESAME to any parent.   </p>   </li>   <li>   <p>  -<tt>E</tt> changes <tt>quux</tt> to &#8220;xyzzy&#8221;, and its merge <tt>P</tt> combines the  - strings to &#8220;quux xyzzy&#8221;. <tt>P</tt> is TREESAME to <tt>O</tt>, but not to <tt>E</tt>.  +<code>E</code> changes <code>quux</code> to &#8220;xyzzy&#8221;, and its merge <code>P</code> combines the  + strings to &#8220;quux xyzzy&#8221;. <code>P</code> is TREESAME to <code>O</code>, but not to <code>E</code>.   </p>   </li>   <li>   <p>  -<tt>X</tt> is an independent root commit that added a new file <tt>side</tt>, and <tt>Y</tt>  - modified it. <tt>Y</tt> is TREESAME to <tt>X</tt>. Its merge <tt>Q</tt> added <tt>side</tt> to <tt>P</tt>, and  - <tt>Q</tt> is TREESAME to <tt>P</tt>, but not to <tt>Y</tt>.  +<code>X</code> is an independent root commit that added a new file <code>side</code>, and <code>Y</code>  + modified it. <code>Y</code> is TREESAME to <code>X</code>. Its merge <code>Q</code> added <code>side</code> to <code>P</code>, and  + <code>Q</code> is TREESAME to <code>P</code>, but not to <code>Y</code>.   </p>   </li>   </ul></div>  -<div class="paragraph"><p><tt>rev-list</tt> walks backwards through history, including or excluding  -commits based on whether <tt>--full-history</tt> and/or parent rewriting  -(via <tt>--parents</tt> or <tt>--children</tt>) are used. The following settings  +<div class="paragraph"><p><code>rev-list</code> walks backwards through history, including or excluding  +commits based on whether <code>--full-history</code> and/or parent rewriting  +(via <code>--parents</code> or <code>--children</code>) are used. The following settings   are available.</p></div>   <div class="dlist"><dl>   <dt class="hdlist1">  @@ -1510,7 +1508,7 @@  <dd>   <p>   Commits are included if they are not TREESAME to any parent  - (though this can be changed, see <tt>--sparse</tt> below). If the  + (though this can be changed, see <code>--sparse</code> below). If the   commit was a merge, and it was TREESAME to one parent, follow   only that parent. (Even if there are several TREESAME   parents, follow only one of them.) Otherwise, follow all  @@ -1519,15 +1517,15 @@  <div class="paragraph"><p>This results in:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> .-A---N---O  +<pre><code> .-A---N---O   / / /  - I---------D</tt></pre>  + I---------D</code></pre>   </div></div>   <div class="paragraph"><p>Note how the rule to only follow the TREESAME parent, if one is  -available, removed <tt>B</tt> from consideration entirely. <tt>C</tt> was  -considered via <tt>N</tt>, but is TREESAME. Root commits are compared to an  -empty tree, so <tt>I</tt> is !TREESAME.</p></div>  -<div class="paragraph"><p>Parent/child relations are only visible with <tt>--parents</tt>, but that does  +available, removed <code>B</code> from consideration entirely. <code>C</code> was  +considered via <code>N</code>, but is TREESAME. Root commits are compared to an  +empty tree, so <code>I</code> is !TREESAME.</p></div>  +<div class="paragraph"><p>Parent/child relations are only visible with <code>--parents</code>, but that does   not affect the commits selected in default mode, so we have shown the   parent lines.</p></div>   </dd>  @@ -1544,10 +1542,10 @@  </p>   <div class="listingblock">   <div class="content">  -<pre><tt> I A B N D O P Q</tt></pre>  +<pre><code> I A B N D O P Q</code></pre>   </div></div>  -<div class="paragraph"><p><tt>M</tt> was excluded because it is TREESAME to both parents. <tt>E</tt>,  -<tt>C</tt> and <tt>B</tt> were all walked, but only <tt>B</tt> was !TREESAME, so the others  +<div class="paragraph"><p><code>M</code> was excluded because it is TREESAME to both parents. <code>E</code>,  +<code>C</code> and <code>B</code> were all walked, but only <code>B</code> was !TREESAME, so the others   do not appear.</p></div>   <div class="paragraph"><p>Note that without parent rewriting, it is not really possible to talk   about the parent/child relationships between the commits, so we show  @@ -1559,23 +1557,23 @@  <dd>   <p>   Ordinary commits are only included if they are !TREESAME  - (though this can be changed, see <tt>--sparse</tt> below).  + (though this can be changed, see <code>--sparse</code> below).   </p>   <div class="paragraph"><p>Merges are always included. However, their parent list is rewritten:   Along each parent, prune away commits that are not included   themselves. This results in</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> .-A---M---N---O---P---Q  +<pre><code> .-A---M---N---O---P---Q   / / / / /   I B / D /   \ / / / /  - `-------------'</tt></pre>  + `-------------'</code></pre>   </div></div>  -<div class="paragraph"><p>Compare to <tt>--full-history</tt> without rewriting above. Note that <tt>E</tt>  +<div class="paragraph"><p>Compare to <code>--full-history</code> without rewriting above. Note that <code>E</code>   was pruned away because it is TREESAME, but the parent list of P was  -rewritten to contain <tt>E</tt>'s parent <tt>I</tt>. The same happened for <tt>C</tt> and  -<tt>N</tt>, and <tt>X</tt>, <tt>Y</tt> and <tt>Q</tt>.</p></div>  +rewritten to contain <code>E</code>'s parent <code>I</code>. The same happened for <code>C</code> and  +<code>N</code>, and <code>X</code>, <code>Y</code> and <code>Q</code>.</p></div>   </dd>   </dl></div>   <div class="paragraph"><p>In addition to the above settings, you can change whether TREESAME  @@ -1597,7 +1595,7 @@  <p>   All commits that are walked are included.   </p>  -<div class="paragraph"><p>Note that without <tt>--full-history</tt>, this still simplifies merges: if  +<div class="paragraph"><p>Note that without <code>--full-history</code>, this still simplifies merges: if   one of the parents is TREESAME, we follow only that one, so the other   sides of the merge are never walked.</p></div>   </dd>  @@ -1607,21 +1605,21 @@  <dd>   <p>   First, build a history graph in the same way that  - <tt>--full-history</tt> with parent rewriting does (see above).  + <code>--full-history</code> with parent rewriting does (see above).   </p>  -<div class="paragraph"><p>Then simplify each commit <tt>C</tt> to its replacement <tt>C'</tt> in the final  +<div class="paragraph"><p>Then simplify each commit <code>C</code> to its replacement <code>C'</code> in the final   history according to the following rules:</p></div>   <div class="openblock">   <div class="content">   <div class="ulist"><ul>   <li>   <p>  -Set <tt>C'</tt> to <tt>C</tt>.  +Set <code>C'</code> to <code>C</code>.   </p>   </li>   <li>   <p>  -Replace each parent <tt>P</tt> of <tt>C'</tt> with its simplification <tt>P'</tt>. In  +Replace each parent <code>P</code> of <code>C'</code> with its simplification <code>P'</code>. In   the process, drop parents that are ancestors of other parents or that are   root commits TREESAME to an empty tree, and remove duplicates, but take care   to never drop all parents that we are TREESAME to.  @@ -1629,7 +1627,7 @@  </li>   <li>   <p>  -If after this parent rewriting, <tt>C'</tt> is a root or merge commit (has  +If after this parent rewriting, <code>C'</code> is a root or merge commit (has   zero or &gt;1 parents), a boundary commit, or !TREESAME, it remains.   Otherwise, it is replaced with its only parent.   </p>  @@ -1637,35 +1635,35 @@  </ul></div>   </div></div>   <div class="paragraph"><p>The effect of this is best shown by way of comparing to  -<tt>--full-history</tt> with parent rewriting. The example turns into:</p></div>  +<code>--full-history</code> with parent rewriting. The example turns into:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> .-A---M---N---O  +<pre><code> .-A---M---N---O   / / /   I B D   \ / /  - `---------'</tt></pre>  + `---------'</code></pre>   </div></div>  -<div class="paragraph"><p>Note the major differences in <tt>N</tt>, <tt>P</tt>, and <tt>Q</tt> over <tt>--full-history</tt>:</p></div>  +<div class="paragraph"><p>Note the major differences in <code>N</code>, <code>P</code>, and <code>Q</code> over <code>--full-history</code>:</p></div>   <div class="openblock">   <div class="content">   <div class="ulist"><ul>   <li>   <p>  -<tt>N</tt>'s parent list had <tt>I</tt> removed, because it is an ancestor of the  - other parent <tt>M</tt>. Still, <tt>N</tt> remained because it is !TREESAME.  +<code>N</code>'s parent list had <code>I</code> removed, because it is an ancestor of the  + other parent <code>M</code>. Still, <code>N</code> remained because it is !TREESAME.   </p>   </li>   <li>   <p>  -<tt>P</tt>'s parent list similarly had <tt>I</tt> removed. <tt>P</tt> was then  +<code>P</code>'s parent list similarly had <code>I</code> removed. <code>P</code> was then   removed completely, because it had one parent and is TREESAME.   </p>   </li>   <li>   <p>  -<tt>Q</tt>'s parent list had <tt>Y</tt> simplified to <tt>X</tt>. <tt>X</tt> was then removed, because it  - was a TREESAME root. <tt>Q</tt> was then removed completely, because it had one  +<code>Q</code>'s parent list had <code>Y</code> simplified to <code>X</code>. <code>X</code> was then removed, because it  + was a TREESAME root. <code>Q</code> was then removed completely, because it had one   parent and is TREESAME.   </p>   </li>  @@ -1688,34 +1686,34 @@  <div class="paragraph"><p>As an example use case, consider the following commit history:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> D---E-------F  +<pre><code> D---E-------F   / \ \   B---C---G---H---I---J   / \  - A-------K---------------L--M</tt></pre>  + A-------K---------------L--M</code></pre>   </div></div>  -<div class="paragraph"><p>A regular <em>D..M</em> computes the set of commits that are ancestors of <tt>M</tt>,  -but excludes the ones that are ancestors of <tt>D</tt>. This is useful to see  -what happened to the history leading to <tt>M</tt> since <tt>D</tt>, in the sense  -that &#8220;what does <tt>M</tt> have that did not exist in <tt>D</tt>&#8221;. The result in this  -example would be all the commits, except <tt>A</tt> and <tt>B</tt> (and <tt>D</tt> itself,  +<div class="paragraph"><p>A regular <em>D..M</em> computes the set of commits that are ancestors of <code>M</code>,  +but excludes the ones that are ancestors of <code>D</code>. This is useful to see  +what happened to the history leading to <code>M</code> since <code>D</code>, in the sense  +that &#8220;what does <code>M</code> have that did not exist in <code>D</code>&#8221;. The result in this  +example would be all the commits, except <code>A</code> and <code>B</code> (and <code>D</code> itself,   of course).</p></div>  -<div class="paragraph"><p>When we want to find out what commits in <tt>M</tt> are contaminated with the  -bug introduced by <tt>D</tt> and need fixing, however, we might want to view  -only the subset of <em>D..M</em> that are actually descendants of <tt>D</tt>, i.e.  -excluding <tt>C</tt> and <tt>K</tt>. This is exactly what the <tt>--ancestry-path</tt>  +<div class="paragraph"><p>When we want to find out what commits in <code>M</code> are contaminated with the  +bug introduced by <code>D</code> and need fixing, however, we might want to view  +only the subset of <em>D..M</em> that are actually descendants of <code>D</code>, i.e.  +excluding <code>C</code> and <code>K</code>. This is exactly what the <code>--ancestry-path</code>   option does. Applied to the <em>D..M</em> range, it results in:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> E-------F  +<pre><code> E-------F   \ \   G---H---I---J   \  - L--M</tt></pre>  + L--M</code></pre>   </div></div>   </dd>   </dl></div>  -<div class="paragraph"><p>The <tt>--simplify-by-decoration</tt> option allows you to view only the  +<div class="paragraph"><p>The <code>--simplify-by-decoration</code> option allows you to view only the   big picture of the topology of the history, by omitting commits   that are not referenced by tags. Commits are marked as !TREESAME   (in other words, kept after history simplification rules described  @@ -1757,14 +1755,14 @@  <div class="paragraph"><p>For example, in a commit history like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> ---1----2----4----7  +<pre><code> ---1----2----4----7   \ \  - 3----5----6----8---</tt></pre>  + 3----5----6----8---</code></pre>   </div></div>  -<div class="paragraph"><p>where the numbers denote the order of commit timestamps, <tt>git  -rev-list</tt> and friends with <tt>--date-order</tt> show the commits in the  +<div class="paragraph"><p>where the numbers denote the order of commit timestamps, <code>git  +rev-list</code> and friends with <code>--date-order</code> show the commits in the   timestamp order: 8 7 6 5 4 3 2 1.</p></div>  -<div class="paragraph"><p>With <tt>--topo-order</tt>, they would show 8 6 5 3 7 4 2 1 (or 8 7 4 2 6 5  +<div class="paragraph"><p>With <code>--topo-order</code>, they would show 8 6 5 3 7 4 2 1 (or 8 7 4 2 6 5   3 1); some older commits are shown before newer ones in order to   avoid showing the commits from two parallel development track mixed   together.</p></div>  @@ -1775,7 +1773,7 @@  <dd>   <p>   Output the commits in reverse order.  - Cannot be combined with <tt>--walk-reflogs</tt>.  + Cannot be combined with <code>--walk-reflogs</code>.   </p>   </dd>   </dl></div>  @@ -1790,7 +1788,7 @@  <dd>   <p>   Print the object IDs of any object referenced by the listed  - commits. <tt>--objects foo ^bar</tt> thus means &#8220;send me  + commits. <code>--objects foo ^bar</code> thus means &#8220;send me   all object IDs which I need to download if I have the commit   object <em>bar</em> but not <em>foo</em>&#8221;.   </p>  @@ -1800,7 +1798,7 @@  </dt>   <dd>   <p>  - Similar to <tt>--objects</tt>, but also print the IDs of excluded  + Similar to <code>--objects</code>, but also print the IDs of excluded   commits prefixed with a &#8220;-&#8221; character. This is used by   <a href="git-pack-objects.html">git-pack-objects(1)</a> to build &#8220;thin&#8221; pack, which records   objects in deltified form based on objects contained in these  @@ -1812,7 +1810,7 @@  </dt>   <dd>   <p>  - Only useful with <tt>--objects</tt>; print the object IDs that are not  + Only useful with <code>--objects</code>; print the object IDs that are not   in packs.   </p>   </dd>  @@ -1823,8 +1821,8 @@  <p>   Only show the given commits, but do not traverse their ancestors.   This has no effect if a range is specified. If the argument  - <tt>unsorted</tt> is given, the commits are shown in the order they were  - given on the command line. Otherwise (if <tt>sorted</tt> or no argument  + <code>unsorted</code> is given, the commits are shown in the order they were  + given on the command line. Otherwise (if <code>sorted</code> or no argument   was given), the commits are shown in reverse chronological order   by commit time.   </p>  @@ -1834,7 +1832,7 @@  </dt>   <dd>   <p>  - Overrides a previous <tt>--no-walk</tt>.  + Overrides a previous <code>--no-walk</code>.   </p>   </dd>   </dl></div>  @@ -1878,7 +1876,7 @@  <dd>   <p>   Show the full 40-byte hexadecimal commit object name. This negates  - <tt>--abbrev-commit</tt> and those options which imply it such as  + <code>--abbrev-commit</code> and those options which imply it such as   "--oneline". It also overrides the <em>log.abbrevCommit</em> variable.   </p>   </dd>  @@ -1910,15 +1908,15 @@  <p>   Show the notes (see <a href="git-notes.html">git-notes(1)</a>) that annotate the   commit, when showing the commit log message. This is the default  - for <tt>git log</tt>, <tt>git show</tt> and <tt>git whatchanged</tt> commands when  - there is no <tt>--pretty</tt>, <tt>--format</tt>, or <tt>--oneline</tt> option given  + for <code>git log</code>, <code>git show</code> and <code>git whatchanged</code> commands when  + there is no <code>--pretty</code>, <code>--format</code>, or <code>--oneline</code> option given   on the command line.   </p>   <div class="paragraph"><p>By default, the notes shown are from the notes refs listed in the   <em>core.notesRef</em> and <em>notes.displayRef</em> variables (or corresponding   environment overrides). See <a href="git-config.html">git-config(1)</a> for more details.</p></div>   <div class="paragraph"><p>With an optional <em>&lt;ref&gt;</em> argument, show this notes ref instead of the  -default notes ref(s). The ref is taken to be in <tt>refs/notes/</tt> if it  +default notes ref(s). The ref is taken to be in <code>refs/notes/</code> if it   is not qualified.</p></div>   <div class="paragraph"><p>Multiple --notes options can be combined to control which notes are   being displayed. Examples: "--notes=foo" will show only notes from  @@ -1930,7 +1928,7 @@  </dt>   <dd>   <p>  - Do not show notes. This negates the above <tt>--notes</tt> option, by  + Do not show notes. This negates the above <code>--notes</code> option, by   resetting the list of notes refs from which notes are shown.   Options are parsed in the order given on the command line, so e.g.   "--notes --notes=foo --no-notes --notes=bar" will only show notes  @@ -1955,7 +1953,7 @@  <dd>   <p>   Check the validity of a signed commit object by passing the signature  - to <tt>gpg --verify</tt> and show the output.  + to <code>gpg --verify</code> and show the output.   </p>   </dd>   <dt class="hdlist1">  @@ -1963,27 +1961,47 @@  </dt>   <dd>   <p>  - Synonym for <tt>--date=relative</tt>.  + Synonym for <code>--date=relative</code>.   </p>   </dd>   <dt class="hdlist1">  ---date=(relative|local|default|iso|rfc|short|raw)  +--date=(relative|local|default|iso|iso-strict|rfc|short|raw)   </dt>   <dd>   <p>   Only takes effect for dates shown in human-readable format, such  - as when using <tt>--pretty</tt>. <tt>log.date</tt> config variable sets a default  - value for the log command&#8217;s <tt>--date</tt> option.  + as when using <code>--pretty</code>. <code>log.date</code> config variable sets a default  + value for the log command&#8217;s <code>--date</code> option.   </p>  -<div class="paragraph"><p><tt>--date=relative</tt> shows dates relative to the current time,  +<div class="paragraph"><p><code>--date=relative</code> shows dates relative to the current time,   e.g. &#8220;2 hours ago&#8221;.</p></div>  -<div class="paragraph"><p><tt>--date=local</tt> shows timestamps in user&#8217;s local time zone.</p></div>  -<div class="paragraph"><p><tt>--date=iso</tt> (or <tt>--date=iso8601</tt>) shows timestamps in ISO 8601 format.</p></div>  -<div class="paragraph"><p><tt>--date=rfc</tt> (or <tt>--date=rfc2822</tt>) shows timestamps in RFC 2822  +<div class="paragraph"><p><code>--date=local</code> shows timestamps in user&#8217;s local time zone.</p></div>  +<div class="paragraph"><p><code>--date=iso</code> (or <code>--date=iso8601</code>) shows timestamps in a ISO 8601-like format.  +The differences to the strict ISO 8601 format are:</p></div>  +<div class="ulist"><ul>  +<li>  +<p>  +a space instead of the <code>T</code> date/time delimiter  +</p>  +</li>  +<li>  +<p>  +a space between time and time zone  +</p>  +</li>  +<li>  +<p>  +no colon between hours and minutes of the time zone  +</p>  +</li>  +</ul></div>  +<div class="paragraph"><p><code>--date=iso-strict</code> (or <code>--date=iso8601-strict</code>) shows timestamps in strict  +ISO 8601 format.</p></div>  +<div class="paragraph"><p><code>--date=rfc</code> (or <code>--date=rfc2822</code>) shows timestamps in RFC 2822   format, often found in email messages.</p></div>  -<div class="paragraph"><p><tt>--date=short</tt> shows only the date, but not the time, in <tt>YYYY-MM-DD</tt> format.</p></div>  -<div class="paragraph"><p><tt>--date=raw</tt> shows the date in the internal raw Git format <tt>%s %z</tt> format.</p></div>  -<div class="paragraph"><p><tt>--date=default</tt> shows timestamps in the original time zone  +<div class="paragraph"><p><code>--date=short</code> shows only the date, but not the time, in <code>YYYY-MM-DD</code> format.</p></div>  +<div class="paragraph"><p><code>--date=raw</code> shows the date in the internal raw Git format <code>%s %z</code> format.</p></div>  +<div class="paragraph"><p><code>--date=default</code> shows timestamps in the original time zone   (either committer&#8217;s or author&#8217;s).</p></div>   </dd>   <dt class="hdlist1">  @@ -2010,30 +2028,30 @@  <dd>   <p>   Mark which side of a symmetric diff a commit is reachable from.  - Commits from the left side are prefixed with <tt>&lt;</tt> and those from  - the right with <tt>&gt;</tt>. If combined with <tt>--boundary</tt>, those  - commits are prefixed with <tt>-</tt>.  + Commits from the left side are prefixed with <code>&lt;</code> and those from  + the right with <code>&gt;</code>. If combined with <code>--boundary</code>, those  + commits are prefixed with <code>-</code>.   </p>   <div class="paragraph"><p>For example, if you have this topology:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> y---b---b branch B  +<pre><code> y---b---b branch B   / \ /   / .   / / \  - o---x---a---a branch A</tt></pre>  + o---x---a---a branch A</code></pre>   </div></div>   <div class="paragraph"><p>you would get an output like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> $ git rev-list --left-right --boundary --pretty=oneline A...B  +<pre><code> $ git rev-list --left-right --boundary --pretty=oneline A...B     &gt;bbbbbbb... 3rd on b   &gt;bbbbbbb... 2nd on b   &lt;aaaaaaa... 3rd on a   &lt;aaaaaaa... 2nd on a   -yyyyyyy... 1st on b  - -xxxxxxx... 1st on a</tt></pre>  + -xxxxxxx... 1st on a</code></pre>   </div></div>   </dd>   <dt class="hdlist1">  @@ -2047,8 +2065,8 @@  to be drawn properly.   </p>   <div class="paragraph"><p>This enables parent rewriting, see <em>History Simplification</em> below.</p></div>  -<div class="paragraph"><p>This implies the <tt>--topo-order</tt> option by default, but the  -<tt>--date-order</tt> option may also be specified.</p></div>  +<div class="paragraph"><p>This implies the <code>--topo-order</code> option by default, but the  +<code>--date-order</code> option may also be specified.</p></div>   </dd>   <dt class="hdlist1">   --show-linear-break[=&lt;barrier&gt;]  @@ -2058,7 +2076,7 @@  When --graph is not used, all history branches are flattened   which can make it hard to see that the two consecutive commits   do not belong to a linear branch. This option puts a barrier  - in between them in that case. If <tt>&lt;barrier&gt;</tt> is specified, it  + in between them in that case. If <code>&lt;barrier&gt;</code> is specified, it   is the string that will be shown instead of the default one.   </p>   </dd>  @@ -2087,7 +2105,7 @@  </dt>   <dd>   <p>  - This flag implies the <tt>-c</tt> option and further compresses the  + This flag implies the <code>-c</code> option and further compresses the   patch output by omitting uninteresting hunks whose contents in   the parents have only two variants and the merge result picks   one of them without modification.  @@ -2101,7 +2119,7 @@  This flag makes the merge commits show the full diff like   regular commits; for each merge parent, a separate log entry   and diff is generated. An exception is that only diff against  - the first parent is shown when <tt>--first-parent</tt> option is given;  + the first parent is shown when <code>--first-parent</code> option is given;   in that case, the output represents the changes the merge   brought <em>into</em> the then-current branch.   </p>  @@ -2119,7 +2137,7 @@  </dt>   <dd>   <p>  - Show the tree objects in the diff output. This implies <tt>-r</tt>.  + Show the tree objects in the diff output. This implies <code>-r</code>.   </p>   </dd>   </dl></div>  @@ -2151,7 +2169,7 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;sha1&gt; &lt;title line&gt;</tt></pre>  +<pre><code>&lt;sha1&gt; &lt;title line&gt;</code></pre>   </div></div>   <div class="paragraph"><p>This is designed to be as compact as possible.</p></div>   </li>  @@ -2161,12 +2179,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  -Author: &lt;author&gt;</tt></pre>  +<pre><code>commit &lt;sha1&gt;  +Author: &lt;author&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   </li>   <li>  @@ -2175,17 +2193,17 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  +<pre><code>commit &lt;sha1&gt;   Author: &lt;author&gt;  -Date: &lt;author date&gt;</tt></pre>  +Date: &lt;author date&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -2194,17 +2212,17 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  +<pre><code>commit &lt;sha1&gt;   Author: &lt;author&gt;  -Commit: &lt;committer&gt;</tt></pre>  +Commit: &lt;committer&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -2213,19 +2231,19 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  +<pre><code>commit &lt;sha1&gt;   Author: &lt;author&gt;   AuthorDate: &lt;author date&gt;   Commit: &lt;committer&gt;  -CommitDate: &lt;committer date&gt;</tt></pre>  +CommitDate: &lt;committer date&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -2234,14 +2252,14 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>From &lt;sha1&gt; &lt;date&gt;  +<pre><code>From &lt;sha1&gt; &lt;date&gt;   From: &lt;author&gt;   Date: &lt;author date&gt;  -Subject: [PATCH] &lt;title line&gt;</tt></pre>  +Subject: [PATCH] &lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -2267,8 +2285,8 @@  would show something like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>The author of fe6e0ee was Junio C Hamano, 23 hours ago  -The title was &gt;&gt;t4119: test autocomputing -p&lt;n&gt; for traditional diff input.&lt;&lt;</tt></pre>  +<pre><code>The author of fe6e0ee was Junio C Hamano, 23 hours ago  +The title was &gt;&gt;t4119: test autocomputing -p&lt;n&gt; for traditional diff input.&lt;&lt;</code></pre>   </div></div>   <div class="paragraph"><p>The placeholders are:</p></div>   <div class="ulist"><ul>  @@ -2346,7 +2364,12 @@  </li>   <li>   <p>  -<em>%ai</em>: author date, ISO 8601 format  +<em>%ai</em>: author date, ISO 8601-like format  +</p>  +</li>  +<li>  +<p>  +<em>%aI</em>: author date, strict ISO 8601 format   </p>   </li>   <li>  @@ -2393,7 +2416,12 @@  </li>   <li>   <p>  -<em>%ci</em>: committer date, ISO 8601 format  +<em>%ci</em>: committer date, ISO 8601-like format  +</p>  +</li>  +<li>  +<p>  +<em>%cI</em>: committer date, strict ISO 8601 format   </p>   </li>   <li>  @@ -2454,12 +2482,12 @@  </li>   <li>   <p>  -<em>%gD</em>: reflog selector, e.g., <tt>refs/stash@{1}</tt>  +<em>%gD</em>: reflog selector, e.g., <code>refs/stash@{1}</code>   </p>   </li>   <li>   <p>  -<em>%gd</em>: shortened reflog selector, e.g., <tt>stash@{1}</tt>  +<em>%gd</em>: shortened reflog selector, e.g., <code>stash@{1}</code>   </p>   </li>   <li>  @@ -2512,10 +2540,10 @@  <li>   <p>   <em>%C(&#8230;)</em>: color specification, as described in color.branch.* config option;  - adding <tt>auto,</tt> at the beginning will emit color only when colors are  - enabled for log output (by <tt>color.diff</tt>, <tt>color.ui</tt>, or <tt>--color</tt>, and  - respecting the <tt>auto</tt> settings of the former if we are going to a  - terminal). <tt>auto</tt> alone (i.e. <tt>%C(auto)</tt>) will turn on auto coloring  + adding <code>auto,</code> at the beginning will emit color only when colors are  + enabled for log output (by <code>color.diff</code>, <code>color.ui</code>, or <code>--color</code>, and  + respecting the <code>auto</code> settings of the former if we are going to a  + terminal). <code>auto</code> alone (i.e. <code>%C(auto)</code>) will turn on auto coloring   on the next placeholders until the color is switched again.   </p>   </li>  @@ -2588,16 +2616,16 @@  <div class="title">Note</div>   </td>   <td class="content">Some placeholders may depend on other options given to the  -revision traversal engine. For example, the <tt>%g*</tt> reflog options will  +revision traversal engine. For example, the <code>%g*</code> reflog options will   insert an empty string unless we are traversing reflog entries (e.g., by  -<tt>git log -g</tt>). The <tt>%d</tt> placeholder will use the "short" decoration  -format if <tt>--decorate</tt> was not already provided on the command line.</td>  +<code>git log -g</code>). The <code>%d</code> placeholder will use the "short" decoration  +format if <code>--decorate</code> was not already provided on the command line.</td>   </tr></table>   </div>  -<div class="paragraph"><p>If you add a <tt>+</tt> (plus sign) after <em>%</em> of a placeholder, a line-feed  +<div class="paragraph"><p>If you add a <code>+</code> (plus sign) after <em>%</em> of a placeholder, a line-feed   is inserted immediately before the expansion if and only if the   placeholder expands to a non-empty string.</p></div>  -<div class="paragraph"><p>If you add a <tt>-</tt> (minus sign) after <em>%</em> of a placeholder, line-feeds that  +<div class="paragraph"><p>If you add a <code>-</code> (minus sign) after <em>%</em> of a placeholder, line-feeds that   immediately precede the expansion are deleted if and only if the   placeholder expands to an empty string.</p></div>   <div class="paragraph"><p>If you add a ` ` (space) after <em>%</em> of a placeholder, a space  @@ -2617,7 +2645,7 @@  For example:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git log -2 --pretty=format:%h 4da45bef \  +<pre><code>$ git log -2 --pretty=format:%h 4da45bef \   | perl -pe '$_ .= " -- NO NEWLINE\n" unless /\n/'   4da45be   7134973 -- NO NEWLINE  @@ -2625,15 +2653,15 @@  $ git log -2 --pretty=tformat:%h 4da45bef \   | perl -pe '$_ .= " -- NO NEWLINE\n" unless /\n/'   4da45be  -7134973</tt></pre>  +7134973</code></pre>   </div></div>  -<div class="paragraph"><p>In addition, any unrecognized string that has a <tt>%</tt> in it is interpreted  -as if it has <tt>tformat:</tt> in front of it. For example, these two are  +<div class="paragraph"><p>In addition, any unrecognized string that has a <code>%</code> in it is interpreted  +as if it has <code>tformat:</code> in front of it. For example, these two are   equivalent:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git log -2 --pretty=tformat:%h 4da45bef  -$ git log -2 --pretty=%h 4da45bef</tt></pre>  +<pre><code>$ git log -2 --pretty=tformat:%h 4da45bef  +$ git log -2 --pretty=%h 4da45bef</code></pre>   </div></div>   </li>   </ul></div>  @@ -2666,8 +2694,8 @@  </dt>   <dd>   <p>  - Suppress diff output. Useful for commands like <tt>git show</tt> that  - show the patch by default, or to cancel the effect of <tt>--patch</tt>.  + Suppress diff output. Useful for commands like <code>git show</code> that  + show the patch by default, or to cancel the effect of <code>--patch</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -2680,7 +2708,7 @@  <p>   Generate diffs with &lt;n&gt; lines of context instead of   the usual three.  - Implies <tt>-p</tt>.  + Implies <code>-p</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -2697,7 +2725,7 @@  </dt>   <dd>   <p>  - Synonym for <tt>-p --raw</tt>.  + Synonym for <code>-p --raw</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -2736,7 +2764,7 @@  <div class="content">   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>default</tt>, <tt>myers</tt>  +<code>default</code>, <code>myers</code>   </dt>   <dd>   <p>  @@ -2744,7 +2772,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>minimal</tt>  +<code>minimal</code>   </dt>   <dd>   <p>  @@ -2753,7 +2781,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>patience</tt>  +<code>patience</code>   </dt>   <dd>   <p>  @@ -2761,7 +2789,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>histogram</tt>  +<code>histogram</code>   </dt>   <dd>   <p>  @@ -2773,7 +2801,7 @@  </div></div>   <div class="paragraph"><p>For instance, if you configured diff.algorithm variable to a   non-default value and want to use the default one, then you  -have to use <tt>--diff-algorithm=default</tt> option.</p></div>  +have to use <code>--diff-algorithm=default</code> option.</p></div>   </dd>   <dt class="hdlist1">   --stat[=&lt;width&gt;[,&lt;name-width&gt;[,&lt;count&gt;]]]  @@ -2784,29 +2812,29 @@  will be used for the filename part, and the rest for the graph   part. Maximum width defaults to terminal width, or 80 columns   if not connected to a terminal, and can be overridden by  - <tt>&lt;width&gt;</tt>. The width of the filename part can be limited by  - giving another width <tt>&lt;name-width&gt;</tt> after a comma. The width  + <code>&lt;width&gt;</code>. The width of the filename part can be limited by  + giving another width <code>&lt;name-width&gt;</code> after a comma. The width   of the graph part can be limited by using  - <tt>--stat-graph-width=&lt;width&gt;</tt> (affects all commands generating  - a stat graph) or by setting <tt>diff.statGraphWidth=&lt;width&gt;</tt>  - (does not affect <tt>git format-patch</tt>).  - By giving a third parameter <tt>&lt;count&gt;</tt>, you can limit the  - output to the first <tt>&lt;count&gt;</tt> lines, followed by <tt>...</tt> if  + <code>--stat-graph-width=&lt;width&gt;</code> (affects all commands generating  + a stat graph) or by setting <code>diff.statGraphWidth=&lt;width&gt;</code>  + (does not affect <code>git format-patch</code>).  + By giving a third parameter <code>&lt;count&gt;</code>, you can limit the  + output to the first <code>&lt;count&gt;</code> lines, followed by <code>...</code> if   there are more.   </p>  -<div class="paragraph"><p>These parameters can also be set individually with <tt>--stat-width=&lt;width&gt;</tt>,  -<tt>--stat-name-width=&lt;name-width&gt;</tt> and <tt>--stat-count=&lt;count&gt;</tt>.</p></div>  +<div class="paragraph"><p>These parameters can also be set individually with <code>--stat-width=&lt;width&gt;</code>,  +<code>--stat-name-width=&lt;name-width&gt;</code> and <code>--stat-count=&lt;count&gt;</code>.</p></div>   </dd>   <dt class="hdlist1">   --numstat   </dt>   <dd>   <p>  - Similar to <tt>--stat</tt>, but shows number of added and  + Similar to <code>--stat</code>, but shows number of added and   deleted lines in decimal notation and pathname without   abbreviation, to make it more machine friendly. For  - binary files, outputs two <tt>-</tt> instead of saying  - <tt>0 0</tt>.  + binary files, outputs two <code>-</code> instead of saying  + <code>0 0</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -2814,7 +2842,7 @@  </dt>   <dd>   <p>  - Output only the last line of the <tt>--stat</tt> format containing total  + Output only the last line of the <code>--stat</code> format containing total   number of modified files, as well as number of added and deleted   lines.   </p>  @@ -2825,9 +2853,9 @@  <dd>   <p>   Output the distribution of relative amount of changes for each  - sub-directory. The behavior of <tt>--dirstat</tt> can be customized by  + sub-directory. The behavior of <code>--dirstat</code> can be customized by   passing it a comma separated list of parameters.  - The defaults are controlled by the <tt>diff.dirstat</tt> configuration  + The defaults are controlled by the <code>diff.dirstat</code> configuration   variable (see <a href="git-config.html">git-config(1)</a>).   The following parameters are available:   </p>  @@ -2835,7 +2863,7 @@  <div class="content">   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>changes</tt>  +<code>changes</code>   </dt>   <dd>   <p>  @@ -2847,39 +2875,39 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>lines</tt>  +<code>lines</code>   </dt>   <dd>   <p>   Compute the dirstat numbers by doing the regular line-based diff   analysis, and summing the removed/added line counts. (For binary   files, count 64-byte chunks instead, since binary files have no  - natural concept of lines). This is a more expensive <tt>--dirstat</tt>  - behavior than the <tt>changes</tt> behavior, but it does count rearranged  + natural concept of lines). This is a more expensive <code>--dirstat</code>  + behavior than the <code>changes</code> behavior, but it does count rearranged   lines within a file as much as other changes. The resulting output  - is consistent with what you get from the other <tt>--*stat</tt> options.  + is consistent with what you get from the other <code>--*stat</code> options.   </p>   </dd>   <dt class="hdlist1">  -<tt>files</tt>  +<code>files</code>   </dt>   <dd>   <p>   Compute the dirstat numbers by counting the number of files changed.   Each changed file counts equally in the dirstat analysis. This is  - the computationally cheapest <tt>--dirstat</tt> behavior, since it does  + the computationally cheapest <code>--dirstat</code> behavior, since it does   not have to look at the file contents at all.   </p>   </dd>   <dt class="hdlist1">  -<tt>cumulative</tt>  +<code>cumulative</code>   </dt>   <dd>   <p>   Count changes in a child directory for the parent directory as well.  - Note that when using <tt>cumulative</tt>, the sum of the percentages  + Note that when using <code>cumulative</code>, the sum of the percentages   reported may exceed 100%. The default (non-cumulative) behavior can  - be specified with the <tt>noncumulative</tt> parameter.  + be specified with the <code>noncumulative</code> parameter.   </p>   </dd>   <dt class="hdlist1">  @@ -2897,7 +2925,7 @@  <div class="paragraph"><p>Example: The following will count changed files, while ignoring   directories with less than 10% of the total amount of changed files,   and accumulating child directory counts in the parent directories:  -<tt>--dirstat=files,10,cumulative</tt>.</p></div>  +<code>--dirstat=files,10,cumulative</code>.</p></div>   </dd>   <dt class="hdlist1">   --summary  @@ -2913,7 +2941,7 @@  </dt>   <dd>   <p>  - Synonym for <tt>-p --stat</tt>.  + Synonym for <code>-p --stat</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -2923,10 +2951,10 @@  <p>   Separate the commits with NULs instead of with new newlines.   </p>  -<div class="paragraph"><p>Also, when <tt>--raw</tt> or <tt>--numstat</tt> has been given, do not munge  +<div class="paragraph"><p>Also, when <code>--raw</code> or <code>--numstat</code> has been given, do not munge   pathnames and use NULs as output field terminators.</p></div>   <div class="paragraph"><p>Without this option, each pathname output will have TAB, LF, double quotes,  -and backslash characters replaced with <tt>\t</tt>, <tt>\n</tt>, <tt>\"</tt>, and <tt>\\</tt>,  +and backslash characters replaced with <code>\t</code>, <code>\n</code>, <code>\"</code>, and <code>\\</code>,   respectively, and the pathname will be enclosed in double quotes if   any of those replacements occurred.</p></div>   </dd>  @@ -2944,7 +2972,7 @@  <dd>   <p>   Show only names and status of changed files. See the description  - of the <tt>--diff-filter</tt> option on what the status letters mean.  + of the <code>--diff-filter</code> option on what the status letters mean.   </p>   </dd>   <dt class="hdlist1">  @@ -2952,13 +2980,13 @@  </dt>   <dd>   <p>  - Specify how differences in submodules are shown. When <tt>--submodule</tt>  - or <tt>--submodule=log</tt> is given, the <em>log</em> format is used. This format lists  - the commits in the range like <a href="git-submodule.html">git-submodule(1)</a> <tt>summary</tt> does.  - Omitting the <tt>--submodule</tt> option or specifying <tt>--submodule=short</tt>,  + Specify how differences in submodules are shown. When <code>--submodule</code>  + or <code>--submodule=log</code> is given, the <em>log</em> format is used. This format lists  + the commits in the range like <a href="git-submodule.html">git-submodule(1)</a> <code>summary</code> does.  + Omitting the <code>--submodule</code> option or specifying <code>--submodule=short</code>,   uses the <em>short</em> format. This format just shows the names of the commits   at the beginning and end of the range. Can be tweaked via the  - <tt>diff.submodule</tt> configuration variable.  + <code>diff.submodule</code> configuration variable.   </p>   </dd>   <dt class="hdlist1">  @@ -2967,8 +2995,8 @@  <dd>   <p>   Show colored diff.  - <tt>--color</tt> (i.e. without <em>=&lt;when&gt;</em>) is the same as <tt>--color=always</tt>.  - <em>&lt;when&gt;</em> can be one of <tt>always</tt>, <tt>never</tt>, or <tt>auto</tt>.  + <code>--color</code> (i.e. without <em>=&lt;when&gt;</em>) is the same as <code>--color=always</code>.  + <em>&lt;when&gt;</em> can be one of <code>always</code>, <code>never</code>, or <code>auto</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -2977,7 +3005,7 @@  <dd>   <p>   Turn off colored diff.  - It is the same as <tt>--color=never</tt>.  + It is the same as <code>--color=never</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -2987,7 +3015,7 @@  <p>   Show a word diff, using the &lt;mode&gt; to delimit changed words.   By default, words are delimited by whitespace; see  - <tt>--word-diff-regex</tt> below. The &lt;mode&gt; defaults to <em>plain</em>, and  + <code>--word-diff-regex</code> below. The &lt;mode&gt; defaults to <em>plain</em>, and   must be one of:   </p>   <div class="openblock">  @@ -2998,7 +3026,7 @@  </dt>   <dd>   <p>  - Highlight changed words using only colors. Implies <tt>--color</tt>.  + Highlight changed words using only colors. Implies <code>--color</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -3006,7 +3034,7 @@  </dt>   <dd>   <p>  - Show words as <tt>[-removed-]</tt> and <tt>{+added+}</tt>. Makes no  + Show words as <code>[-removed-]</code> and <code>{+added+}</code>. Makes no   attempts to escape the delimiters if they appear in the input,   so the output may be ambiguous.   </p>  @@ -3018,10 +3046,10 @@  <p>   Use a special line-based format intended for script   consumption. Added/removed/unchanged runs are printed in the  - usual unified diff format, starting with a <tt>+</tt>/<tt>-</tt>/` `  + usual unified diff format, starting with a <code>+</code>/<code>-</code>/` `   character at the beginning of the line and extending to the   end of the line. Newlines in the input are represented by a  - tilde <tt>~</tt> on a line of its own.  + tilde <code>~</code> on a line of its own.   </p>   </dd>   <dt class="hdlist1">  @@ -3044,12 +3072,12 @@  <p>   Use &lt;regex&gt; to decide what a word is, instead of considering   runs of non-whitespace to be a word. Also implies  - <tt>--word-diff</tt> unless it was already enabled.  + <code>--word-diff</code> unless it was already enabled.   </p>   <div class="paragraph"><p>Every non-overlapping match of the   &lt;regex&gt; is considered a word. Anything between these matches is   considered whitespace and ignored(!) for the purposes of finding  -differences. You may want to append <tt>|[^[:space:]]</tt> to your regular  +differences. You may want to append <code>|[^[:space:]]</code> to your regular   expression to make sure that it matches all non-whitespace characters.   A match that contains a newline is silently truncated(!) at the   newline.</p></div>  @@ -3063,8 +3091,8 @@  </dt>   <dd>   <p>  - Equivalent to <tt>--word-diff=color</tt> plus (if a regex was  - specified) <tt>--word-diff-regex=&lt;regex&gt;</tt>.  + Equivalent to <code>--word-diff=color</code> plus (if a regex was  + specified) <code>--word-diff-regex=&lt;regex&gt;</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -3082,7 +3110,7 @@  <dd>   <p>   Warn if changes introduce whitespace errors. What are  - considered whitespace errors is controlled by <tt>core.whitespace</tt>  + considered whitespace errors is controlled by <code>core.whitespace</code>   configuration. By default, trailing whitespaces (including   lines that solely consist of whitespaces) and a space character   that is immediately followed by a tab character inside the  @@ -3106,8 +3134,8 @@  </dt>   <dd>   <p>  - In addition to <tt>--full-index</tt>, output a binary diff that  - can be applied with <tt>git-apply</tt>.  + In addition to <code>--full-index</code>, output a binary diff that  + can be applied with <code>git-apply</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -3118,9 +3146,9 @@  Instead of showing the full 40-byte hexadecimal object   name in diff-raw format output and diff-tree header   lines, show only a partial prefix. This is  - independent of the <tt>--full-index</tt> option above, which controls  + independent of the <code>--full-index</code> option above, which controls   the diff-patch output format. Non default number of  - digits can be specified with <tt>--abbrev=&lt;n&gt;</tt>.  + digits can be specified with <code>--abbrev=&lt;n&gt;</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -3138,15 +3166,15 @@  not as a series of deletion and insertion mixed together with a very   few lines that happen to match textually as the context, but as a   single deletion of everything old followed by a single insertion of  -everything new, and the number <tt>m</tt> controls this aspect of the -B  -option (defaults to 60%). <tt>-B/70%</tt> specifies that less than 30% of the  +everything new, and the number <code>m</code> controls this aspect of the -B  +option (defaults to 60%). <code>-B/70%</code> specifies that less than 30% of the   original should remain in the result for Git to consider it a total   rewrite (i.e. otherwise the resulting patch will be a series of   deletion and insertion mixed together with context lines).</p></div>   <div class="paragraph"><p>When used with -M, a totally-rewritten file is also considered as the   source of a rename (usually -M only considers a file that disappeared  -as the source of a rename), and the number <tt>n</tt> controls this aspect of  -the -B option (defaults to 50%). <tt>-B20%</tt> specifies that a change with  +as the source of a rename), and the number <code>n</code> controls this aspect of  +the -B option (defaults to 50%). <code>-B20%</code> specifies that a change with   addition and deletion compared to 20% or more of the file&#8217;s size are   eligible for being picked up as a possible source of a rename to   another file.</p></div>  @@ -3161,16 +3189,16 @@  <p>   If generating diffs, detect and report renames for each commit.   For following files across renames while traversing history, see  - <tt>--follow</tt>.  - If <tt>n</tt> is specified, it is a threshold on the similarity  + <code>--follow</code>.  + If <code>n</code> is specified, it is a threshold on the similarity   index (i.e. amount of addition/deletions compared to the  - file&#8217;s size). For example, <tt>-M90%</tt> means Git should consider a  + file&#8217;s size). For example, <code>-M90%</code> means Git should consider a   delete/add pair to be a rename if more than 90% of the file  - hasn&#8217;t changed. Without a <tt>%</tt> sign, the number is to be read as  - a fraction, with a decimal point before it. I.e., <tt>-M5</tt> becomes  - 0.5, and is thus the same as <tt>-M50%</tt>. Similarly, <tt>-M05</tt> is  - the same as <tt>-M5%</tt>. To limit detection to exact renames, use  - <tt>-M100%</tt>. The default similarity index is 50%.  + hasn&#8217;t changed. Without a <code>%</code> sign, the number is to be read as  + a fraction, with a decimal point before it. I.e., <code>-M5</code> becomes  + 0.5, and is thus the same as <code>-M50%</code>. Similarly, <code>-M05</code> is  + the same as <code>-M5%</code>. To limit detection to exact renames, use  + <code>-M100%</code>. The default similarity index is 50%.   </p>   </dd>   <dt class="hdlist1">  @@ -3181,8 +3209,8 @@  </dt>   <dd>   <p>  - Detect copies as well as renames. See also <tt>--find-copies-harder</tt>.  - If <tt>n</tt> is specified, it has the same meaning as for <tt>-M&lt;n&gt;</tt>.  + Detect copies as well as renames. See also <code>--find-copies-harder</code>.  + If <code>n</code> is specified, it has the same meaning as for <code>-M&lt;n&gt;</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -3190,13 +3218,13 @@  </dt>   <dd>   <p>  - For performance reasons, by default, <tt>-C</tt> option finds copies only  + For performance reasons, by default, <code>-C</code> option finds copies only   if the original file of the copy was modified in the same   changeset. This flag makes the command   inspect unmodified files as candidates for the source of   copy. This is a very expensive operation for large   projects, so use it with caution. Giving more than one  - <tt>-C</tt> option has the same effect.  + <code>-C</code> option has the same effect.   </p>   </dd>   <dt class="hdlist1">  @@ -3208,14 +3236,14 @@  <dd>   <p>   Omit the preimage for deletes, i.e. print only the header but not  - the diff between the preimage and <tt>/dev/null</tt>. The resulting patch  - is not meant to be applied with <tt>patch</tt> or <tt>git apply</tt>; this is  + the diff between the preimage and <code>/dev/null</code>. The resulting patch  + is not meant to be applied with <code>patch</code> or <code>git apply</code>; this is   solely for people who want to just concentrate on reviewing the   text after the change. In addition, the output obviously lack   enough information to apply such a patch in reverse, even manually,   hence the name of the option.   </p>  -<div class="paragraph"><p>When used together with <tt>-B</tt>, omit also the preimage in the deletion part  +<div class="paragraph"><p>When used together with <code>-B</code>, omit also the preimage in the deletion part   of a delete/create pair.</p></div>   </dd>   <dt class="hdlist1">  @@ -3223,7 +3251,7 @@  </dt>   <dd>   <p>  - The <tt>-M</tt> and <tt>-C</tt> options require O(n^2) processing time where n  + The <code>-M</code> and <code>-C</code> options require O(n^2) processing time where n   is the number of potential rename/copy targets. This   option prevents rename/copy detection from running if   the number of rename/copy targets exceeds the specified  @@ -3235,13 +3263,13 @@  </dt>   <dd>   <p>  - Select only files that are Added (<tt>A</tt>), Copied (<tt>C</tt>),  - Deleted (<tt>D</tt>), Modified (<tt>M</tt>), Renamed (<tt>R</tt>), have their  - type (i.e. regular file, symlink, submodule, &#8230;) changed (<tt>T</tt>),  - are Unmerged (<tt>U</tt>), are  - Unknown (<tt>X</tt>), or have had their pairing Broken (<tt>B</tt>).  + Select only files that are Added (<code>A</code>), Copied (<code>C</code>),  + Deleted (<code>D</code>), Modified (<code>M</code>), Renamed (<code>R</code>), have their  + type (i.e. regular file, symlink, submodule, &#8230;) changed (<code>T</code>),  + are Unmerged (<code>U</code>), are  + Unknown (<code>X</code>), or have had their pairing Broken (<code>B</code>).   Any combination of the filter characters (including none) can be used.  - When <tt>*</tt> (All-or-none) is added to the combination, all  + When <code>*</code> (All-or-none) is added to the combination, all   paths are selected if there is any file that matches   other criteria in the comparison; if there is no file   that matches other criteria, nothing is selected.  @@ -3259,7 +3287,7 @@  <div class="paragraph"><p>It is useful when you&#8217;re looking for an exact block of code (like a   struct), and want to know the history of that block since it first   came into being: use the feature iteratively to feed the interesting  -block in the preimage back into <tt>-S</tt>, and keep going until you get the  +block in the preimage back into <code>-S</code>, and keep going until you get the   very first version of the block.</p></div>   </dd>   <dt class="hdlist1">  @@ -3270,17 +3298,17 @@  Look for differences whose patch text contains added/removed   lines that match &lt;regex&gt;.   </p>  -<div class="paragraph"><p>To illustrate the difference between <tt>-S&lt;regex&gt; --pickaxe-regex</tt> and  -<tt>-G&lt;regex&gt;</tt>, consider a commit with the following diff in the same  +<div class="paragraph"><p>To illustrate the difference between <code>-S&lt;regex&gt; --pickaxe-regex</code> and  +<code>-G&lt;regex&gt;</code>, consider a commit with the following diff in the same   file:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>+ return !regexec(regexp, two-&gt;ptr, 1, &amp;regmatch, 0);  +<pre><code>+ return !regexec(regexp, two-&gt;ptr, 1, &amp;regmatch, 0);   ...  -- hit = !regexec(regexp, mf2.ptr, 1, &amp;regmatch, 0);</tt></pre>  +- hit = !regexec(regexp, mf2.ptr, 1, &amp;regmatch, 0);</code></pre>   </div></div>  -<div class="paragraph"><p>While <tt>git log -G"regexec\(regexp"</tt> will show this commit, <tt>git log  --S"regexec\(regexp" --pickaxe-regex</tt> will not (because the number of  +<div class="paragraph"><p>While <code>git log -G"regexec\(regexp"</code> will show this commit, <code>git log  +-S"regexec\(regexp" --pickaxe-regex</code> will not (because the number of   occurrences of that string did not change).</p></div>   <div class="paragraph"><p>See the <em>pickaxe</em> entry in <a href="gitdiffcore.html">gitdiffcore(7)</a> for more   information.</p></div>  @@ -3290,7 +3318,7 @@  </dt>   <dd>   <p>  - When <tt>-S</tt> or <tt>-G</tt> finds a change, show all the changes in that  + When <code>-S</code> or <code>-G</code> finds a change, show all the changes in that   changeset, not just the files that contain the change   in &lt;string&gt;.   </p>  @@ -3300,7 +3328,7 @@  </dt>   <dd>   <p>  - Treat the &lt;string&gt; given to <tt>-S</tt> as an extended POSIX regular  + Treat the &lt;string&gt; given to <code>-S</code> as an extended POSIX regular   expression to match.   </p>   </dd>  @@ -3311,9 +3339,9 @@  <p>   Output the patch in the order specified in the   &lt;orderfile&gt;, which has one shell glob pattern per line.  - This overrides the <tt>diff.orderfile</tt> configuration variable  - (see <a href="git-config.html">git-config(1)</a>). To cancel <tt>diff.orderfile</tt>,  - use <tt>-O/dev/null</tt>.  + This overrides the <code>diff.orderfile</code> configuration variable  + (see <a href="git-config.html">git-config(1)</a>). To cancel <code>diff.orderfile</code>,  + use <code>-O/dev/null</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -3512,12 +3540,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>diff --git a/file1 b/file2</tt></pre>  +<pre><code>diff --git a/file1 b/file2</code></pre>   </div></div>  -<div class="paragraph"><p>The <tt>a/</tt> and <tt>b/</tt> filenames are the same unless rename/copy is  +<div class="paragraph"><p>The <code>a/</code> and <code>b/</code> filenames are the same unless rename/copy is   involved. Especially, even for a creation or a deletion,  -<tt>/dev/null</tt> is <em>not</em> used in place of the <tt>a/</tt> or <tt>b/</tt> filenames.</p></div>  -<div class="paragraph"><p>When rename/copy is involved, <tt>file1</tt> and <tt>file2</tt> show the  +<code>/dev/null</code> is <em>not</em> used in place of the <code>a/</code> or <code>b/</code> filenames.</p></div>  +<div class="paragraph"><p>When rename/copy is involved, <code>file1</code> and <code>file2</code> show the   name of the source file of the rename/copy and the name of   the file that rename/copy produces, respectively.</p></div>   </li>  @@ -3527,7 +3555,7 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>old mode &lt;mode&gt;  +<pre><code>old mode &lt;mode&gt;   new mode &lt;mode&gt;   deleted file mode &lt;mode&gt;   new file mode &lt;mode&gt;  @@ -3537,11 +3565,11 @@  rename to &lt;path&gt;   similarity index &lt;number&gt;   dissimilarity index &lt;number&gt;  -index &lt;hash&gt;..&lt;hash&gt; &lt;mode&gt;</tt></pre>  +index &lt;hash&gt;..&lt;hash&gt; &lt;mode&gt;</code></pre>   </div></div>   <div class="paragraph"><p>File modes are printed as 6-digit octal numbers including the file type   and file permission bits.</p></div>  -<div class="paragraph"><p>Path names in extended headers do not include the <tt>a/</tt> and <tt>b/</tt> prefixes.</p></div>  +<div class="paragraph"><p>Path names in extended headers do not include the <code>a/</code> and <code>b/</code> prefixes.</p></div>   <div class="paragraph"><p>The similarity index is the percentage of unchanged lines, and   the dissimilarity index is the percentage of changed lines. It   is a rounded down integer, followed by a percent sign. The  @@ -3555,26 +3583,26 @@  <li>   <p>   TAB, LF, double quote and backslash characters in pathnames  - are represented as <tt>\t</tt>, <tt>\n</tt>, <tt>\"</tt> and <tt>\\</tt>, respectively.  + are represented as <code>\t</code>, <code>\n</code>, <code>\"</code> and <code>\\</code>, respectively.   If there is need for such substitution then the whole   pathname is put in double quotes.   </p>   </li>   <li>   <p>  -All the <tt>file1</tt> files in the output refer to files before the  - commit, and all the <tt>file2</tt> files refer to files after the commit.  +All the <code>file1</code> files in the output refer to files before the  + commit, and all the <code>file2</code> files refer to files after the commit.   It is incorrect to apply each change to each file sequentially. For   example, this patch will swap a and b:   </p>   <div class="literalblock">   <div class="content">  -<pre><tt>diff --git a/a b/b  +<pre><code>diff --git a/a b/b   rename from a   rename to b   diff --git a/b b/a   rename from b  -rename to a</tt></pre>  +rename to a</code></pre>   </div></div>   </li>   </ol></div>  @@ -3583,7 +3611,7 @@  <div class="sect1">   <h2 id="_combined_diff_format">combined diff format</h2>   <div class="sectionbody">  -<div class="paragraph"><p>Any diff-generating command can take the &#8216;-c` or <tt>--cc</tt> option to  +<div class="paragraph"><p>Any diff-generating command can take the &#8216;-c` or <code>--cc</code> option to   produce a <em>combined diff</em> when showing a merge. This is the default   format when showing merges with <a href="git-diff.html">git-diff(1)</a> or   <a href="git-show.html">git-show(1)</a>. Note also that you can give the `-m&#8217; option to any  @@ -3592,7 +3620,7 @@  <div class="paragraph"><p>A <em>combined diff</em> format looks like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>diff --combined describe.c  +<pre><code>diff --combined describe.c   index fabadb8,cc95eb0..4866510   --- a/describe.c   +++ b/describe.c  @@ -3618,7 +3646,7 @@  +   if (!initialized) {   initialized = 1;  - for_each_ref(get_name);</tt></pre>  + for_each_ref(get_name);</code></pre>   </div></div>   <div class="olist arabic"><ol class="arabic">   <li>  @@ -3628,12 +3656,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>diff --combined file</tt></pre>  +<pre><code>diff --combined file</code></pre>   </div></div>   <div class="paragraph"><p>or like this (when <em>--cc</em> option is used):</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>diff --cc file</tt></pre>  +<pre><code>diff --cc file</code></pre>   </div></div>   </li>   <li>  @@ -3643,12 +3671,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>index &lt;hash&gt;,&lt;hash&gt;..&lt;hash&gt;  +<pre><code>index &lt;hash&gt;,&lt;hash&gt;..&lt;hash&gt;   mode &lt;mode&gt;,&lt;mode&gt;..&lt;mode&gt;   new file mode &lt;mode&gt;  -deleted file mode &lt;mode&gt;,&lt;mode&gt;</tt></pre>  +deleted file mode &lt;mode&gt;,&lt;mode&gt;</code></pre>   </div></div>  -<div class="paragraph"><p>The <tt>mode &lt;mode&gt;,&lt;mode&gt;..&lt;mode&gt;</tt> line appears only if at least one of  +<div class="paragraph"><p>The <code>mode &lt;mode&gt;,&lt;mode&gt;..&lt;mode&gt;</code> line appears only if at least one of   the &lt;mode&gt; is different from the rest. Extended headers with   information about detected contents movement (renames and   copying detection) are designed to work with diff of two  @@ -3660,49 +3688,49 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>--- a/file  -+++ b/file</tt></pre>  +<pre><code>--- a/file  ++++ b/file</code></pre>   </div></div>   <div class="paragraph"><p>Similar to two-line header for traditional <em>unified</em> diff  -format, <tt>/dev/null</tt> is used to signal created or deleted  +format, <code>/dev/null</code> is used to signal created or deleted   files.</p></div>   </li>   <li>   <p>   Chunk header format is modified to prevent people from  - accidentally feeding it to <tt>patch -p1</tt>. Combined diff format  + accidentally feeding it to <code>patch -p1</code>. Combined diff format   was created for review of merge commit changes, and was not   meant for apply. The change is similar to the change in the   extended <em>index</em> header:   </p>   <div class="literalblock">   <div class="content">  -<pre><tt>@@@ &lt;from-file-range&gt; &lt;from-file-range&gt; &lt;to-file-range&gt; @@@</tt></pre>  +<pre><code>@@@ &lt;from-file-range&gt; &lt;from-file-range&gt; &lt;to-file-range&gt; @@@</code></pre>   </div></div>  -<div class="paragraph"><p>There are (number of parents + 1) <tt>@</tt> characters in the chunk  +<div class="paragraph"><p>There are (number of parents + 1) <code>@</code> characters in the chunk   header for combined diff format.</p></div>   </li>   </ol></div>   <div class="paragraph"><p>Unlike the traditional <em>unified</em> diff format, which shows two  -files A and B with a single column that has <tt>-</tt> (minus&#8201;&#8212;&#8201;appears in A but removed in B), <tt>+</tt> (plus&#8201;&#8212;&#8201;missing in A but  -added to B), or <tt>" "</tt> (space&#8201;&#8212;&#8201;unchanged) prefix, this format  +files A and B with a single column that has <code>-</code> (minus&#8201;&#8212;&#8201;appears in A but removed in B), <code>+</code> (plus&#8201;&#8212;&#8201;missing in A but  +added to B), or <code>" "</code> (space&#8201;&#8212;&#8201;unchanged) prefix, this format   compares two or more files file1, file2,&#8230; with one file X, and   shows how X differs from each of fileN. One column for each of   fileN is prepended to the output line to note how X&#8217;s line is   different from it.</p></div>  -<div class="paragraph"><p>A <tt>-</tt> character in the column N means that the line appears in  -fileN but it does not appear in the result. A <tt>+</tt> character  +<div class="paragraph"><p>A <code>-</code> character in the column N means that the line appears in  +fileN but it does not appear in the result. A <code>+</code> character   in the column N means that the line appears in the result,   and fileN does not have that line (in other words, the line was   added, from the point of view of that parent).</p></div>   <div class="paragraph"><p>In the above example output, the function signature was changed  -from both files (hence two <tt>-</tt> removals from both file1 and  -file2, plus <tt>++</tt> to mean one line that was added does not appear  +from both files (hence two <code>-</code> removals from both file1 and  +file2, plus <code>++</code> to mean one line that was added does not appear   in either file1 or file2). Also eight other lines are the same  -from file1 but do not appear in file2 (hence prefixed with <tt>+</tt>).</p></div>  -<div class="paragraph"><p>When shown by <tt>git diff-tree -c</tt>, it compares the parents of a  +from file1 but do not appear in file2 (hence prefixed with <code>+</code>).</p></div>  +<div class="paragraph"><p>When shown by <code>git diff-tree -c</code>, it compares the parents of a   merge commit with the merge result (i.e. file1..fileN are the  -parents). When shown by <tt>git diff-files -c</tt>, it compares the  +parents). When shown by <code>git diff-files -c</code>, it compares the   two unresolved merge parents with the working tree file   (i.e. file1 is stage 2 aka "our version", file2 is stage 3 aka   "their version").</p></div>  @@ -3713,7 +3741,7 @@  <div class="sectionbody">   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>git log --no-merges</tt>  +<code>git log --no-merges</code>   </dt>   <dd>   <p>  @@ -3721,16 +3749,16 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>git log v2.6.12.. include/scsi drivers/scsi</tt>  +<code>git log v2.6.12.. include/scsi drivers/scsi</code>   </dt>   <dd>   <p>   Show all commits since version <em>v2.6.12</em> that changed any file  - in the <tt>include/scsi</tt> or <tt>drivers/scsi</tt> subdirectories  + in the <code>include/scsi</code> or <code>drivers/scsi</code> subdirectories   </p>   </dd>   <dt class="hdlist1">  -<tt>git log --since="2 weeks ago" -- gitk</tt>  +<code>git log --since="2 weeks ago" -- gitk</code>   </dt>   <dd>   <p>  @@ -3740,7 +3768,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>git log --name-status release..test</tt>  +<code>git log --name-status release..test</code>   </dt>   <dd>   <p>  @@ -3750,17 +3778,17 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>git log --follow builtin/rev-list.c</tt>  +<code>git log --follow builtin/rev-list.c</code>   </dt>   <dd>   <p>  - Shows the commits that changed <tt>builtin/rev-list.c</tt>, including  + Shows the commits that changed <code>builtin/rev-list.c</code>, including   those commits that occurred before the file was given its   present name.   </p>   </dd>   <dt class="hdlist1">  -<tt>git log --branches --not --remotes=origin</tt>  +<code>git log --branches --not --remotes=origin</code>   </dt>   <dd>   <p>  @@ -3770,7 +3798,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>git log master --not --remotes=*/master</tt>  +<code>git log master --not --remotes=*/master</code>   </dt>   <dd>   <p>  @@ -3779,7 +3807,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>git log -p -m --first-parent</tt>  +<code>git log -p -m --first-parent</code>   </dt>   <dd>   <p>  @@ -3791,16 +3819,16 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>git log -L '/int main/',/^}/:main.c</tt>  +<code>git log -L '/int main/',/^}/:main.c</code>   </dt>   <dd>   <p>  - Shows how the function <tt>main()</tt> in the file <tt>main.c</tt> evolved  + Shows how the function <code>main()</code> in the file <code>main.c</code> evolved   over time.   </p>   </dd>   <dt class="hdlist1">  -<tt>git log -3</tt>  +<code>git log -3</code>   </dt>   <dd>   <p>  @@ -3852,33 +3880,33 @@  a warning if the commit log message given to it does not look   like a valid UTF-8 string, unless you explicitly say your   project uses a legacy encoding. The way to say this is to  - have i18n.commitencoding in <tt>.git/config</tt> file, like this:  + have i18n.commitencoding in <code>.git/config</code> file, like this:   </p>   <div class="listingblock">   <div class="content">  -<pre><tt>[i18n]  - commitencoding = ISO-8859-1</tt></pre>  +<pre><code>[i18n]  + commitencoding = ISO-8859-1</code></pre>   </div></div>   <div class="paragraph"><p>Commit objects created with the above setting record the value  -of <tt>i18n.commitencoding</tt> in its <tt>encoding</tt> header. This is to  +of <code>i18n.commitencoding</code> in its <code>encoding</code> header. This is to   help other people who look at them later. Lack of this header   implies that the commit log message is encoded in UTF-8.</p></div>   </li>   <li>   <p>   <em>git log</em>, <em>git show</em>, <em>git blame</em> and friends look at the  - <tt>encoding</tt> header of a commit object, and try to re-code the  + <code>encoding</code> header of a commit object, and try to re-code the   log message into UTF-8 unless otherwise specified. You can   specify the desired output encoding with  - <tt>i18n.logoutputencoding</tt> in <tt>.git/config</tt> file, like this:  + <code>i18n.logoutputencoding</code> in <code>.git/config</code> file, like this:   </p>   <div class="listingblock">   <div class="content">  -<pre><tt>[i18n]  - logoutputencoding = ISO-8859-1</tt></pre>  +<pre><code>[i18n]  + logoutputencoding = ISO-8859-1</code></pre>   </div></div>   <div class="paragraph"><p>If you do not have this configuration variable, the value of  -<tt>i18n.commitencoding</tt> is used instead.</p></div>  +<code>i18n.commitencoding</code> is used instead.</p></div>   </li>   </ol></div>   <div class="paragraph"><p>Note that we deliberately chose not to re-code the commit log  @@ -3898,8 +3926,8 @@  </dt>   <dd>   <p>  - Default for the <tt>--format</tt> option. (See <em>Pretty Formats</em> above.)  - Defaults to <tt>medium</tt>.  + Default for the <code>--format</code> option. (See <em>Pretty Formats</em> above.)  + Defaults to <code>medium</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -3908,7 +3936,7 @@  <dd>   <p>   Encoding to use when displaying logs. (See <em>Discussion</em> above.)  - Defaults to the value of <tt>i18n.commitEncoding</tt> if set, and UTF-8  + Defaults to the value of <code>i18n.commitEncoding</code> if set, and UTF-8   otherwise.   </p>   </dd>  @@ -3918,8 +3946,8 @@  <dd>   <p>   Default format for human-readable dates. (Compare the  - <tt>--date</tt> option.) Defaults to "default", which means to write  - dates like <tt>Sat May 8 19:35:34 2010 -0500</tt>.  + <code>--date</code> option.) Defaults to "default", which means to write  + dates like <code>Sat May 8 19:35:34 2010 -0500</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -3927,10 +3955,10 @@  </dt>   <dd>   <p>  - If <tt>false</tt>, <tt>git log</tt> and related commands will not treat the  + If <code>false</code>, <code>git log</code> and related commands will not treat the   initial commit as a big creation event. Any root commits in  - <tt>git log -p</tt> output would be shown without a diff attached.  - The default is <tt>true</tt>.  + <code>git log -p</code> output would be shown without a diff attached.  + The default is <code>true</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -3946,17 +3974,17 @@  </dt>   <dd>   <p>  - Which refs, in addition to the default set by <tt>core.notesRef</tt>  + Which refs, in addition to the default set by <code>core.notesRef</code>   or <em>GIT_NOTES_REF</em>, to read notes from when showing commit  - messages with the <tt>log</tt> family of commands. See  + messages with the <code>log</code> family of commands. See   <a href="git-notes.html">git-notes(1)</a>.   </p>   <div class="paragraph"><p>May be an unabbreviated ref name or a glob and may be specified   multiple times. A warning will be issued for refs that do not exist,   but a glob that does not match any refs is silently ignored.</p></div>  -<div class="paragraph"><p>This setting can be disabled by the <tt>--no-notes</tt> option,  +<div class="paragraph"><p>This setting can be disabled by the <code>--no-notes</code> option,   overridden by the <em>GIT_NOTES_DISPLAY_REF</em> environment variable,  -and overridden by the <tt>--notes=&lt;ref&gt;</tt> option.</p></div>  +and overridden by the <code>--notes=&lt;ref&gt;</code> option.</p></div>   </dd>   </dl></div>   </div>  
diff --git a/git-rebase.html b/git-rebase.html index 81419f1..04ad5d2 100644 --- a/git-rebase.html +++ b/git-rebase.html 
@@ -3,7 +3,7 @@  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   <head>   <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />  -<meta name="generator" content="AsciiDoc 8.6.6" />  +<meta name="generator" content="AsciiDoc 8.6.9" />   <title>git-rebase(1)</title>   <style type="text/css">   /* Shared CSS for AsciiDoc xhtml11 and html5 backends */  @@ -87,10 +87,16 @@  ul > li { color: #aaa; }   ul > li > * { color: black; }    -pre {  +.monospaced, code, pre {  + font-family: "Courier New", Courier, monospace;  + font-size: inherit;  + color: navy;   padding: 0;   margin: 0;   }  +pre {  + white-space: pre-wrap;  +}     #author {   color: #527bbd;  @@ -219,7 +225,7 @@  }     div.imageblock div.content { padding-left: 0; }  -span.image img { border-style: none; }  +span.image img { border-style: none; vertical-align: text-bottom; }   a.image:visited { color: white; }     dl {  @@ -349,7 +355,7 @@  margin-bottom: 0.1em;   }    -div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {  +div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {   margin-top: 0;   margin-bottom: 0;   }  @@ -407,18 +413,14 @@  span.overline { text-decoration: overline; }   span.line-through { text-decoration: line-through; }    +div.unbreakable { page-break-inside: avoid; }  +     /*   * xhtml11 specific   *   * */    -tt {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   div.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -452,12 +454,6 @@  *   * */    -.monospaced {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   table.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -537,6 +533,8 @@  @media print {   body.manpage div#toc { display: none; }   }  +  +   </style>   <script type="text/javascript">   /*<![CDATA[*/  @@ -581,7 +579,7 @@    function tocEntries(el, toclevels) {   var result = new Array;  - var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');  + var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');   // Function that scans the DOM tree for header elements (the DOM2   // nodeIterator API would be a better technique but not supported by all   // browsers).  @@ -610,7 +608,7 @@  var i;   for (i = 0; i < toc.childNodes.length; i++) {   var entry = toc.childNodes[i];  - if (entry.nodeName == 'div'  + if (entry.nodeName.toLowerCase() == 'div'   && entry.getAttribute("class")   && entry.getAttribute("class").match(/^toclevel/))   tocEntriesToRemove.push(entry);  @@ -656,7 +654,7 @@  var entriesToRemove = [];   for (i = 0; i < noteholder.childNodes.length; i++) {   var entry = noteholder.childNodes[i];  - if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")  + if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")   entriesToRemove.push(entry);   }   for (i = 0; i < entriesToRemove.length; i++) {  @@ -751,7 +749,7 @@  <div class="sectionbody">   <div class="verseblock">   <pre class="content"><em>git rebase</em> [-i | --interactive] [options] [--exec &lt;cmd&gt;] [--onto &lt;newbase&gt;]  - [&lt;upstream&gt;] [&lt;branch&gt;]  + [&lt;upstream&gt; [&lt;branch&gt;]]   <em>git rebase</em> [-i | --interactive] [options] [--exec &lt;cmd&gt;] [--onto &lt;newbase&gt;]   --root [&lt;branch&gt;]   <em>git rebase</em> --continue | --skip | --abort | --edit-todo</pre>  @@ -763,7 +761,7 @@  <h2 id="_description">DESCRIPTION</h2>   <div class="sectionbody">   <div class="paragraph"><p>If &lt;branch&gt; is specified, <em>git rebase</em> will perform an automatic  -<tt>git checkout &lt;branch&gt;</tt> before doing anything else. Otherwise  +<code>git checkout &lt;branch&gt;</code> before doing anything else. Otherwise   it remains on the current branch.</p></div>   <div class="paragraph"><p>If &lt;upstream&gt; is not specified, the upstream configured in   branch.&lt;name&gt;.remote and branch.&lt;name&gt;.merge options will be used; see  @@ -772,11 +770,11 @@  the rebase will abort.</p></div>   <div class="paragraph"><p>All changes made by commits in the current branch but that are not   in &lt;upstream&gt; are saved to a temporary area. This is the same set  -of commits that would be shown by <tt>git log &lt;upstream&gt;..HEAD</tt> (or  -<tt>git log HEAD</tt>, if --root is specified).</p></div>  +of commits that would be shown by <code>git log &lt;upstream&gt;..HEAD</code> (or  +<code>git log HEAD</code>, if --root is specified).</p></div>   <div class="paragraph"><p>The current branch is reset to &lt;upstream&gt;, or &lt;newbase&gt; if the   --onto option was supplied. This has the exact same effect as  -<tt>git reset --hard &lt;upstream&gt;</tt> (or &lt;newbase&gt;). ORIG_HEAD is set  +<code>git reset --hard &lt;upstream&gt;</code> (or &lt;newbase&gt;). ORIG_HEAD is set   to point at the tip of the branch before the reset.</p></div>   <div class="paragraph"><p>The commits that were previously saved into the temporary area are   then reapplied to the current branch, one by one, in order. Note that  @@ -785,32 +783,32 @@  with a different commit message or timestamp will be skipped).</p></div>   <div class="paragraph"><p>It is possible that a merge failure will prevent this process from being   completely automatic. You will have to resolve any such merge failure  -and run <tt>git rebase --continue</tt>. Another option is to bypass the commit  -that caused the merge failure with <tt>git rebase --skip</tt>. To check out the  +and run <code>git rebase --continue</code>. Another option is to bypass the commit  +that caused the merge failure with <code>git rebase --skip</code>. To check out the   original &lt;branch&gt; and remove the .git/rebase-apply working files, use the  -command <tt>git rebase --abort</tt> instead.</p></div>  +command <code>git rebase --abort</code> instead.</p></div>   <div class="paragraph"><p>Assume the following history exists and the current branch is "topic":</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> A---B---C topic  +<pre><code> A---B---C topic   /  - D---E---F---G master</tt></pre>  + D---E---F---G master</code></pre>   </div></div>   <div class="paragraph"><p>From this point, the result of either of the following commands:</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git rebase master  -git rebase master topic</tt></pre>  +<pre><code>git rebase master  +git rebase master topic</code></pre>   </div></div>   <div class="paragraph"><p>would be:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> A'--B'--C' topic  +<pre><code> A'--B'--C' topic   /  - D---E---F---G master</tt></pre>  + D---E---F---G master</code></pre>   </div></div>  -<div class="paragraph"><p><strong>NOTE:</strong> The latter form is just a short-hand of <tt>git checkout topic</tt>  -followed by <tt>git rebase master</tt>. When rebase exits <tt>topic</tt> will  +<div class="paragraph"><p><strong>NOTE:</strong> The latter form is just a short-hand of <code>git checkout topic</code>  +followed by <code>git rebase master</code>. When rebase exits <code>topic</code> will   remain the checked-out branch.</p></div>   <div class="paragraph"><p>If the upstream branch already contains a change you have made (e.g.,   because you mailed a patch which was applied upstream), then that commit  @@ -819,87 +817,87 @@  but have different committer information):</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> A---B---C topic  +<pre><code> A---B---C topic   /  - D---E---A'---F master</tt></pre>  + D---E---A'---F master</code></pre>   </div></div>   <div class="paragraph"><p>will result in:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> B'---C' topic  +<pre><code> B'---C' topic   /  - D---E---A'---F master</tt></pre>  + D---E---A'---F master</code></pre>   </div></div>   <div class="paragraph"><p>Here is how you would transplant a topic branch based on one   branch to another, to pretend that you forked the topic branch  -from the latter branch, using <tt>rebase --onto</tt>.</p></div>  +from the latter branch, using <code>rebase --onto</code>.</p></div>   <div class="paragraph"><p>First let&#8217;s assume your <em>topic</em> is based on branch <em>next</em>.   For example, a feature developed in <em>topic</em> depends on some   functionality which is found in <em>next</em>.</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> o---o---o---o---o master  +<pre><code> o---o---o---o---o master   \   o---o---o---o---o next   \  - o---o---o topic</tt></pre>  + o---o---o topic</code></pre>   </div></div>   <div class="paragraph"><p>We want to make <em>topic</em> forked from branch <em>master</em>; for example,   because the functionality on which <em>topic</em> depends was merged into the   more stable <em>master</em> branch. We want our tree to look like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> o---o---o---o---o master  +<pre><code> o---o---o---o---o master   | \   | o'--o'--o' topic   \  - o---o---o---o---o next</tt></pre>  + o---o---o---o---o next</code></pre>   </div></div>   <div class="paragraph"><p>We can get this using the following command:</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git rebase --onto master next topic</tt></pre>  +<pre><code>git rebase --onto master next topic</code></pre>   </div></div>   <div class="paragraph"><p>Another example of --onto option is to rebase part of a   branch. If we have the following situation:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> H---I---J topicB  +<pre><code> H---I---J topicB   /   E---F---G topicA   /  - A---B---C---D master</tt></pre>  + A---B---C---D master</code></pre>   </div></div>   <div class="paragraph"><p>then the command</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git rebase --onto master topicA topicB</tt></pre>  +<pre><code>git rebase --onto master topicA topicB</code></pre>   </div></div>   <div class="paragraph"><p>would result in:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> H'--I'--J' topicB  +<pre><code> H'--I'--J' topicB   /   | E---F---G topicA   |/  - A---B---C---D master</tt></pre>  + A---B---C---D master</code></pre>   </div></div>   <div class="paragraph"><p>This is useful when topicB does not depend on topicA.</p></div>   <div class="paragraph"><p>A range of commits could also be removed with rebase. If we have   the following situation:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> E---F---G---H---I---J topicA</tt></pre>  +<pre><code> E---F---G---H---I---J topicA</code></pre>   </div></div>   <div class="paragraph"><p>then the command</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git rebase --onto topicA~5 topicA~3 topicA</tt></pre>  +<pre><code>git rebase --onto topicA~5 topicA~3 topicA</code></pre>   </div></div>   <div class="paragraph"><p>would result in the removal of commits F and G:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> E---H'---I'---J' topicA</tt></pre>  +<pre><code> E---H'---I'---J' topicA</code></pre>   </div></div>   <div class="paragraph"><p>This is useful if F and G were flawed in some way, or should not be   part of topicA. Note that the argument to --onto and the &lt;upstream&gt;  @@ -911,18 +909,18 @@  typically this would be done with</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git add &lt;filename&gt;</tt></pre>  +<pre><code>git add &lt;filename&gt;</code></pre>   </div></div>   <div class="paragraph"><p>After resolving the conflict manually and updating the index with the   desired resolution, you can continue the rebasing process with</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git rebase --continue</tt></pre>  +<pre><code>git rebase --continue</code></pre>   </div></div>   <div class="paragraph"><p>Alternatively, you can undo the <em>git rebase</em> with</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git rebase --abort</tt></pre>  +<pre><code>git rebase --abort</code></pre>   </div></div>   </div>   </div>  @@ -1066,7 +1064,7 @@  <dd>   <p>   Use the given merge strategy.  - If there is no <tt>-s</tt> option <em>git merge-recursive</em> is used  + If there is no <code>-s</code> option <em>git merge-recursive</em> is used   instead. This implies --merge.   </p>   <div class="paragraph"><p>Because <em>git rebase</em> replays each commit from the working branch  @@ -1083,9 +1081,9 @@  <dd>   <p>   Pass the &lt;strategy-option&gt; through to the merge strategy.  - This implies <tt>--merge</tt> and, if no strategy has been  - specified, <tt>-s recursive</tt>. Note the reversal of <em>ours</em> and  - <em>theirs</em> as noted above for the <tt>-m</tt> option.  + This implies <code>--merge</code> and, if no strategy has been  + specified, <code>-s recursive</code>. Note the reversal of <em>ours</em> and  + <em>theirs</em> as noted above for the <code>-m</code> option.   </p>   </dd>   <dt class="hdlist1">  @@ -1178,7 +1176,7 @@  <dd>   <p>   Force a rebase even if the current branch is up-to-date and  - the command without <tt>--force</tt> would return without doing anything.  + the command without <code>--force</code> would return without doing anything.   </p>   <div class="paragraph"><p>You may find this (or --no-ff with an interactive rebase) helpful after   reverting a topic branch merge, as this option recreates the topic branch with  @@ -1195,12 +1193,12 @@  <dd>   <p>   Use <em>git merge-base --fork-point</em> to find a better common ancestor  - between <tt>upstream</tt> and <tt>branch</tt> when calculating which commits have  - have been introduced by <tt>branch</tt> (see <a href="git-merge-base.html">git-merge-base(1)</a>).  + between <code>upstream</code> and <code>branch</code> when calculating which commits have  + have been introduced by <code>branch</code> (see <a href="git-merge-base.html">git-merge-base(1)</a>).   </p>   <div class="paragraph"><p>If no non-option arguments are given on the command line, then the default is  -<tt>--fork-point @{u}</tt> otherwise the <tt>upstream</tt> argument is interpreted literally  -unless the <tt>--fork-point</tt> option is specified.</p></div>  +<code>--fork-point @{u}</code> otherwise the <code>upstream</code> argument is interpreted literally  +unless the <code>--fork-point</code> option is specified.</p></div>   </dd>   <dt class="hdlist1">   --ignore-whitespace  @@ -1251,8 +1249,8 @@  <p>   Instead of ignoring merges, try to recreate them.   </p>  -<div class="paragraph"><p>This uses the <tt>--interactive</tt> machinery internally, but combining it  -with the <tt>--interactive</tt> option explicitly is generally not a good  +<div class="paragraph"><p>This uses the <code>--interactive</code> machinery internally, but combining it  +with the <code>--interactive</code> option explicitly is generally not a good   idea unless you know what you are doing (see BUGS below).</p></div>   </dd>   <dt class="hdlist1">  @@ -1267,20 +1265,20 @@  final history. &lt;cmd&gt; will be interpreted as one or more shell   commands.   </p>  -<div class="paragraph"><p>This option can only be used with the <tt>--interactive</tt> option  +<div class="paragraph"><p>This option can only be used with the <code>--interactive</code> option   (see INTERACTIVE MODE below).</p></div>  -<div class="paragraph"><p>You may execute several commands by either using one instance of <tt>--exec</tt>  +<div class="paragraph"><p>You may execute several commands by either using one instance of <code>--exec</code>   with several commands:</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git rebase -i --exec "cmd1 &amp;&amp; cmd2 &amp;&amp; ..."</tt></pre>  +<pre><code>git rebase -i --exec "cmd1 &amp;&amp; cmd2 &amp;&amp; ..."</code></pre>   </div></div>  -<div class="paragraph"><p>or by giving more than one <tt>--exec</tt>:</p></div>  +<div class="paragraph"><p>or by giving more than one <code>--exec</code>:</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git rebase -i --exec "cmd1" --exec "cmd2" --exec ...</tt></pre>  +<pre><code>git rebase -i --exec "cmd1" --exec "cmd2" --exec ...</code></pre>   </div></div>  -<div class="paragraph"><p>If <tt>--autosquash</tt> is used, "exec" lines will not be appended for  +<div class="paragraph"><p>If <code>--autosquash</code> is used, "exec" lines will not be appended for   the intermediate commits, and will only appear at the end of each   squash/fixup series.</p></div>   </dd>  @@ -1312,13 +1310,13 @@  the same &#8230;, automatically modify the todo list of rebase -i   so that the commit marked for squashing comes right after the   commit to be modified, and change the action of the moved  - commit from <tt>pick</tt> to <tt>squash</tt> (or <tt>fixup</tt>). Ignores subsequent  + commit from <code>pick</code> to <code>squash</code> (or <code>fixup</code>). Ignores subsequent   "fixup! " or "squash! " after the first, in case you referred to an  - earlier fixup/squash with <tt>git commit --fixup/--squash</tt>.  + earlier fixup/squash with <code>git commit --fixup/--squash</code>.   </p>   <div class="paragraph"><p>This option is only valid when the <em>--interactive</em> option is used.</p></div>   <div class="paragraph"><p>If the <em>--autosquash</em> option is enabled by default using the  -configuration variable <tt>rebase.autosquash</tt>, this option can be  +configuration variable <code>rebase.autosquash</code>, this option can be   used to override and disable this setting.</p></div>   </dd>   <dt class="hdlist1">  @@ -1354,10 +1352,10 @@  <div class="sect1">   <h2 id="_merge_strategies">MERGE STRATEGIES</h2>   <div class="sectionbody">  -<div class="paragraph"><p>The merge mechanism (<tt>git merge</tt> and <tt>git pull</tt> commands) allows the  -backend <em>merge strategies</em> to be chosen with <tt>-s</tt> option. Some strategies  -can also take their own options, which can be passed by giving <tt>-X&lt;option&gt;</tt>  -arguments to <tt>git merge</tt> and/or <tt>git pull</tt>.</p></div>  +<div class="paragraph"><p>The merge mechanism (<code>git merge</code> and <code>git pull</code> commands) allows the  +backend <em>merge strategies</em> to be chosen with <code>-s</code> option. Some strategies  +can also take their own options, which can be passed by giving <code>-X&lt;option&gt;</code>  +arguments to <code>git merge</code> and/or <code>git pull</code>.</p></div>   <div class="dlist"><dl>   <dt class="hdlist1">   resolve  @@ -1421,7 +1419,7 @@  to avoid mismerges that sometimes occur due to unimportant   matching lines (e.g., braces from distinct functions). Use   this when the branches to be merged have diverged wildly.  - See also <a href="git-diff.html">git-diff(1)</a> <tt>--patience</tt>.  + See also <a href="git-diff.html">git-diff(1)</a> <code>--patience</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1432,7 +1430,7 @@  Tells <em>merge-recursive</em> to use a different diff algorithm, which   can help avoid mismerges that occur due to unimportant matching   lines (such as braces from distinct functions). See also  - <a href="git-diff.html">git-diff(1)</a> <tt>--diff-algorithm</tt>.  + <a href="git-diff.html">git-diff(1)</a> <code>--diff-algorithm</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1449,8 +1447,8 @@  Treats lines with the indicated type of whitespace change as   unchanged for the sake of a three-way merge. Whitespace   changes mixed with other changes to a line are not ignored.  - See also <a href="git-diff.html">git-diff(1)</a> <tt>-b</tt>, <tt>-w</tt>, and  - <tt>--ignore-space-at-eol</tt>.  + See also <a href="git-diff.html">git-diff(1)</a> <code>-b</code>, <code>-w</code>, and  + <code>--ignore-space-at-eol</code>.   </p>   <div class="ulist"><ul>   <li>  @@ -1490,8 +1488,8 @@  </dt>   <dd>   <p>  - Disables the <tt>renormalize</tt> option. This overrides the  - <tt>merge.renormalize</tt> configuration variable.  + Disables the <code>renormalize</code> option. This overrides the  + <code>merge.renormalize</code> configuration variable.   </p>   </dd>   <dt class="hdlist1">  @@ -1500,7 +1498,7 @@  <dd>   <p>   Controls the similarity threshold used for rename detection.  - See also <a href="git-diff.html">git-diff(1)</a> <tt>-M</tt>.  + See also <a href="git-diff.html">git-diff(1)</a> <code>-M</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1646,7 +1644,7 @@  <div class="paragraph"><p>Start it with the last commit you want to retain as-is:</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git rebase -i &lt;after-this-commit&gt;</tt></pre>  +<pre><code>git rebase -i &lt;after-this-commit&gt;</code></pre>   </div></div>   <div class="paragraph"><p>An editor will be fired up with all the commits in your current branch   (ignoring merge commits), which come after the given commit. You can  @@ -1654,9 +1652,9 @@  remove them. The list looks more or less like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>pick deadbee The oneline of this commit  +<pre><code>pick deadbee The oneline of this commit   pick fa1afe1 The oneline of the next commit  -...</tt></pre>  +...</code></pre>   </div></div>   <div class="paragraph"><p>The oneline descriptions are purely for your pleasure; <em>git rebase</em> will   not look at them but at the commit names ("deadbee" and "fa1afe1" in this  @@ -1676,29 +1674,29 @@  but omits the commit messages of commits with the "fixup" command.</p></div>   <div class="paragraph"><p><em>git rebase</em> will stop when "pick" has been replaced with "edit" or   when a command fails due to merge errors. When you are done editing  -and/or resolving conflicts you can continue with <tt>git rebase --continue</tt>.</p></div>  +and/or resolving conflicts you can continue with <code>git rebase --continue</code>.</p></div>   <div class="paragraph"><p>For example, if you want to reorder the last 5 commits, such that what   was HEAD~4 becomes the new HEAD. To achieve that, you would call   <em>git rebase</em> like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git rebase -i HEAD~5</tt></pre>  +<pre><code>$ git rebase -i HEAD~5</code></pre>   </div></div>   <div class="paragraph"><p>And move the first patch to the end of the list.</p></div>   <div class="paragraph"><p>You might want to preserve merges, if you have a history like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> X  +<pre><code> X   \   A---M---B   /  ----o---O---P---Q</tt></pre>  +---o---O---P---Q</code></pre>   </div></div>   <div class="paragraph"><p>Suppose you want to rebase the side branch starting at "A" to "Q". Make   sure that the current HEAD is "B", and call</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git rebase -i -p --onto Q O</tt></pre>  +<pre><code>$ git rebase -i -p --onto Q O</code></pre>   </div></div>   <div class="paragraph"><p>Reordering and editing commits usually creates untested intermediate   steps. You may want to check that your history editing did not break  @@ -1707,37 +1705,37 @@  do so by creating a todo list like this one:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>pick deadbee Implement feature XXX  +<pre><code>pick deadbee Implement feature XXX   fixup f1a5c00 Fix to feature XXX   exec make   pick c0ffeee The oneline of the next commit   edit deadbab The oneline of the commit after   exec cd subdir; make test  -...</tt></pre>  +...</code></pre>   </div></div>   <div class="paragraph"><p>The interactive rebase will stop when a command fails (i.e. exits with   non-0 status) to give you an opportunity to fix the problem. You can  -continue with <tt>git rebase --continue</tt>.</p></div>  +continue with <code>git rebase --continue</code>.</p></div>   <div class="paragraph"><p>The "exec" command launches the command in a shell (the one specified  -in <tt>$SHELL</tt>, or the default shell if <tt>$SHELL</tt> is not set), so you can  +in <code>$SHELL</code>, or the default shell if <code>$SHELL</code> is not set), so you can   use shell features (like "cd", "&gt;", ";" &#8230;). The command is run from   the root of the working tree.</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git rebase -i --exec "make test"</tt></pre>  +<pre><code>$ git rebase -i --exec "make test"</code></pre>   </div></div>   <div class="paragraph"><p>This command lets you check that intermediate commits are compilable.   The todo list becomes like that:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>pick 5928aea one  +<pre><code>pick 5928aea one   exec make test   pick 04d0fda two   exec make test   pick ba46169 three   exec make test   pick f4593f9 four  -exec make test</tt></pre>  +exec make test</code></pre>   </div></div>   </div>   </div>  @@ -1751,7 +1749,7 @@  <div class="ulist"><ul>   <li>   <p>  -Start an interactive rebase with <tt>git rebase -i &lt;commit&gt;^</tt>, where  +Start an interactive rebase with <code>git rebase -i &lt;commit&gt;^</code>, where   &lt;commit&gt; is the commit you want to split. In fact, any commit range   will do, as long as it contains that commit.   </p>  @@ -1763,7 +1761,7 @@  </li>   <li>   <p>  -When it comes to editing that commit, execute <tt>git reset HEAD^</tt>. The  +When it comes to editing that commit, execute <code>git reset HEAD^</code>. The   effect is that the HEAD is rewound by one, and the index follows suit.   However, the working tree stays the same.   </p>  @@ -1771,7 +1769,7 @@  <li>   <p>   Now add the changes to the index that you want to have in the first  - commit. You can use <tt>git add</tt> (possibly interactively) or  + commit. You can use <code>git add</code> (possibly interactively) or   <em>git gui</em> (or both) to do that.   </p>   </li>  @@ -1788,7 +1786,7 @@  </li>   <li>   <p>  -Continue the rebase with <tt>git rebase --continue</tt>.  +Continue the rebase with <code>git rebase --continue</code>.   </p>   </li>   </ul></div>  @@ -1812,30 +1810,30 @@  following:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> o---o---o---o---o---o---o---o---o master  +<pre><code> o---o---o---o---o---o---o---o---o master   \   o---o---o---o---o subsystem   \  - *---*---* topic</tt></pre>  + *---*---* topic</code></pre>   </div></div>   <div class="paragraph"><p>If <em>subsystem</em> is rebased against <em>master</em>, the following happens:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> o---o---o---o---o---o---o---o master  +<pre><code> o---o---o---o---o---o---o---o master   \ \   o---o---o---o---o o'--o'--o'--o'--o' subsystem   \  - *---*---* topic</tt></pre>  + *---*---* topic</code></pre>   </div></div>   <div class="paragraph"><p>If you now continue development as usual, and eventually merge <em>topic</em>   to <em>subsystem</em>, the commits from <em>subsystem</em> will remain duplicated forever:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> o---o---o---o---o---o---o---o master  +<pre><code> o---o---o---o---o---o---o---o master   \ \   o---o---o---o---o o'--o'--o'--o'--o'--M subsystem   \ /  - *---*---*-..........-*--* topic</tt></pre>  + *---*---*-..........-*--* topic</code></pre>   </div></div>   <div class="paragraph"><p>Such duplicates are generally frowned upon because they clutter up   history, making it harder to follow. To clean things up, you need to  @@ -1859,9 +1857,9 @@  <dd>   <p>   This happens if the <em>subsystem</em> rebase had conflicts, or used  - <tt>--interactive</tt> to omit, edit, squash, or fixup commits; or  - if the upstream used one of <tt>commit --amend</tt>, <tt>reset</tt>, or  - <tt>filter-branch</tt>.  + <code>--interactive</code> to omit, edit, squash, or fixup commits; or  + if the upstream used one of <code>commit --amend</code>, <code>reset</code>, or  + <code>filter-branch</code>.   </p>   </dd>   </dl></div>  @@ -1875,16 +1873,16 @@  (assuming you&#8217;re on <em>topic</em>)</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> $ git rebase subsystem</tt></pre>  +<pre><code> $ git rebase subsystem</code></pre>   </div></div>   <div class="paragraph"><p>you will end up with the fixed history</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> o---o---o---o---o---o---o---o master  +<pre><code> o---o---o---o---o---o---o---o master   \   o'--o'--o'--o'--o' subsystem   \  - *---*---* topic</tt></pre>  + *---*---* topic</code></pre>   </div></div>   </div>   <div class="sect2">  @@ -1898,8 +1896,8 @@  </td>   <td class="content">While an "easy case recovery" sometimes appears to be successful   even in the hard case, it may have unintended consequences. For  - example, a commit that was removed via <tt>git rebase  - --interactive</tt> will be <strong>resurrected</strong>!</td>  + example, a commit that was removed via <code>git rebase  + --interactive</code> will be <strong>resurrected</strong>!</td>   </tr></table>   </div>   <div class="paragraph"><p>The idea is to manually tell <em>git rebase</em> "where the old <em>subsystem</em>  @@ -1910,22 +1908,22 @@  <li>   <p>   With the <em>subsystem</em> reflog: after <em>git fetch</em>, the old tip of  - <em>subsystem</em> is at <tt>subsystem@{1}</tt>. Subsequent fetches will  + <em>subsystem</em> is at <code>subsystem@{1}</code>. Subsequent fetches will   increase the number. (See <a href="git-reflog.html">git-reflog(1)</a>.)   </p>   </li>   <li>   <p>   Relative to the tip of <em>topic</em>: knowing that your <em>topic</em> has three  - commits, the old tip of <em>subsystem</em> must be <tt>topic~3</tt>.  + commits, the old tip of <em>subsystem</em> must be <code>topic~3</code>.   </p>   </li>   </ul></div>  -<div class="paragraph"><p>You can then transplant the old <tt>subsystem..topic</tt> to the new tip by  +<div class="paragraph"><p>You can then transplant the old <code>subsystem..topic</code> to the new tip by   saying (for the reflog case, and assuming you are on <em>topic</em> already):</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> $ git rebase --onto subsystem subsystem@{1}</tt></pre>  +<pre><code> $ git rebase --onto subsystem subsystem@{1}</code></pre>   </div></div>   <div class="paragraph"><p>The ripple effect of a "hard case" recovery is especially bad:   <em>everyone</em> downstream from <em>topic</em> will now have to perform a "hard  @@ -1936,26 +1934,26 @@  <div class="sect1">   <h2 id="_bugs">BUGS</h2>   <div class="sectionbody">  -<div class="paragraph"><p>The todo list presented by <tt>--preserve-merges --interactive</tt> does not  +<div class="paragraph"><p>The todo list presented by <code>--preserve-merges --interactive</code> does not   represent the topology of the revision graph. Editing commits and   rewording their commit messages should work fine, but attempts to   reorder commits tend to produce counterintuitive results.</p></div>   <div class="paragraph"><p>For example, an attempt to rearrange</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>1 --- 2 --- 3 --- 4 --- 5</tt></pre>  +<pre><code>1 --- 2 --- 3 --- 4 --- 5</code></pre>   </div></div>   <div class="paragraph"><p>to</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>1 --- 2 --- 4 --- 3 --- 5</tt></pre>  +<pre><code>1 --- 2 --- 4 --- 3 --- 5</code></pre>   </div></div>   <div class="paragraph"><p>by moving the "pick 4" line will result in the following history:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> 3  +<pre><code> 3   /  -1 --- 2 --- 4 --- 5</tt></pre>  +1 --- 2 --- 4 --- 5</code></pre>   </div></div>   </div>   </div>  @@ -1969,7 +1967,7 @@  <div id="footnotes"><hr /></div>   <div id="footer">   <div id="footer-text">  -Last updated 2014-09-09 14:15:21 PDT  +Last updated 2014-09-19 15:32:09 PDT   </div>   </div>   </body>  
diff --git a/git-rebase.txt b/git-rebase.txt index f14100a..4138554 100644 --- a/git-rebase.txt +++ b/git-rebase.txt 
@@ -9,7 +9,7 @@  --------  [verse]  'git rebase' [-i | --interactive] [options] [--exec <cmd>] [--onto <newbase>] -	[<upstream>] [<branch>] +	[<upstream> [<branch>]]  'git rebase' [-i | --interactive] [options] [--exec <cmd>] [--onto <newbase>] 	--root [<branch>]  'git rebase' --continue | --skip | --abort | --edit-todo 
diff --git a/git-rev-list.html b/git-rev-list.html index 849ba3e..d021095 100644 --- a/git-rev-list.html +++ b/git-rev-list.html 
@@ -3,7 +3,7 @@  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   <head>   <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />  -<meta name="generator" content="AsciiDoc 8.6.6" />  +<meta name="generator" content="AsciiDoc 8.6.9" />   <title>git-rev-list(1)</title>   <style type="text/css">   /* Shared CSS for AsciiDoc xhtml11 and html5 backends */  @@ -87,10 +87,16 @@  ul > li { color: #aaa; }   ul > li > * { color: black; }    -pre {  +.monospaced, code, pre {  + font-family: "Courier New", Courier, monospace;  + font-size: inherit;  + color: navy;   padding: 0;   margin: 0;   }  +pre {  + white-space: pre-wrap;  +}     #author {   color: #527bbd;  @@ -219,7 +225,7 @@  }     div.imageblock div.content { padding-left: 0; }  -span.image img { border-style: none; }  +span.image img { border-style: none; vertical-align: text-bottom; }   a.image:visited { color: white; }     dl {  @@ -349,7 +355,7 @@  margin-bottom: 0.1em;   }    -div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {  +div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {   margin-top: 0;   margin-bottom: 0;   }  @@ -407,18 +413,14 @@  span.overline { text-decoration: overline; }   span.line-through { text-decoration: line-through; }    +div.unbreakable { page-break-inside: avoid; }  +     /*   * xhtml11 specific   *   * */    -tt {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   div.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -452,12 +454,6 @@  *   * */    -.monospaced {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   table.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -537,6 +533,8 @@  @media print {   body.manpage div#toc { display: none; }   }  +  +   </style>   <script type="text/javascript">   /*<![CDATA[*/  @@ -581,7 +579,7 @@    function tocEntries(el, toclevels) {   var result = new Array;  - var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');  + var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');   // Function that scans the DOM tree for header elements (the DOM2   // nodeIterator API would be a better technique but not supported by all   // browsers).  @@ -610,7 +608,7 @@  var i;   for (i = 0; i < toc.childNodes.length; i++) {   var entry = toc.childNodes[i];  - if (entry.nodeName == 'div'  + if (entry.nodeName.toLowerCase() == 'div'   && entry.getAttribute("class")   && entry.getAttribute("class").match(/^toclevel/))   tocEntriesToRemove.push(entry);  @@ -656,7 +654,7 @@  var entriesToRemove = [];   for (i = 0; i < noteholder.childNodes.length; i++) {   var entry = noteholder.childNodes[i];  - if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")  + if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")   entriesToRemove.push(entry);   }   for (i = 0; i < entriesToRemove.length; i++) {  @@ -786,7 +784,7 @@  [ --regexp-ignore-case | -i ]   [ --extended-regexp | -E ]   [ --fixed-strings | -F ]  - [ --date=(local|relative|default|iso|rfc|short) ]  + [ --date=(local|relative|default|iso|iso-strict|rfc|short) ]   [ [--objects | --objects-edge] [ --unpacked ] ]   [ --pretty | --header ]   [ --bisect ]  @@ -805,7 +803,7 @@  <div class="sect1">   <h2 id="_description">DESCRIPTION</h2>   <div class="sectionbody">  -<div class="paragraph"><p>List commits that are reachable by following the <tt>parent</tt> links from the  +<div class="paragraph"><p>List commits that are reachable by following the <code>parent</code> links from the   given commit(s), but exclude commits that are reachable from the one(s)   given with a <em>&#94;</em> in front of them. The output is given in reverse   chronological order by default.</p></div>  @@ -818,7 +816,7 @@  <div class="paragraph"><p>Thus, the following command:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> $ git rev-list foo bar ^baz</tt></pre>  +<pre><code> $ git rev-list foo bar ^baz</code></pre>   </div></div>   <div class="paragraph"><p>means "list all the commits which are reachable from <em>foo</em> or <em>bar</em>, but   not from <em>baz</em>".</p></div>  @@ -827,16 +825,16 @@  the following may be used interchangeably:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> $ git rev-list origin..HEAD  - $ git rev-list HEAD ^origin</tt></pre>  +<pre><code> $ git rev-list origin..HEAD  + $ git rev-list HEAD ^origin</code></pre>   </div></div>   <div class="paragraph"><p>Another special notation is "<em>&lt;commit1&gt;</em>&#8230;<em>&lt;commit2&gt;</em>" which is useful   for merges. The resulting set of commits is the symmetric difference   between the two operands. The following two commands are equivalent:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> $ git rev-list A B --not $(git merge-base --all A B)  - $ git rev-list A...B</tt></pre>  +<pre><code> $ git rev-list A B --not $(git merge-base --all A B)  + $ git rev-list A...B</code></pre>   </div></div>   <div class="paragraph"><p><em>rev-list</em> is a very essential Git command, since it   provides the ability to build and traverse commit ancestry graphs. For  @@ -854,11 +852,11 @@  special notations explained in the description, additional commit   limiting may be applied.</p></div>   <div class="paragraph"><p>Using more options generally further limits the output (e.g.  -<tt>--since=&lt;date1&gt;</tt> limits to commits newer than <tt>&lt;date1&gt;</tt>, and using it  -with <tt>--grep=&lt;pattern&gt;</tt> further limits to commits whose log message  -has a line that matches <tt>&lt;pattern&gt;</tt>), unless otherwise noted.</p></div>  +<code>--since=&lt;date1&gt;</code> limits to commits newer than <code>&lt;date1&gt;</code>, and using it  +with <code>--grep=&lt;pattern&gt;</code> further limits to commits whose log message  +has a line that matches <code>&lt;pattern&gt;</code>), unless otherwise noted.</p></div>   <div class="paragraph"><p>Note that these are applied before commit  -ordering and formatting options, such as <tt>--reverse</tt>.</p></div>  +ordering and formatting options, such as <code>--reverse</code>.</p></div>   <div class="openblock">   <div class="content">   <div class="dlist"><dl>  @@ -927,9 +925,9 @@  <p>   Limit the commits output to ones with author/committer   header lines that match the specified pattern (regular  - expression). With more than one <tt>--author=&lt;pattern&gt;</tt>,  + expression). With more than one <code>--author=&lt;pattern&gt;</code>,   commits whose author matches any of the given patterns are  - chosen (similarly for multiple <tt>--committer=&lt;pattern&gt;</tt>).  + chosen (similarly for multiple <code>--committer=&lt;pattern&gt;</code>).   </p>   </dd>   <dt class="hdlist1">  @@ -939,9 +937,9 @@  <p>   Limit the commits output to ones with reflog entries that   match the specified pattern (regular expression). With  - more than one <tt>--grep-reflog</tt>, commits whose reflog message  + more than one <code>--grep-reflog</code>, commits whose reflog message   matches any of the given patterns are chosen. It is an  - error to use this option unless <tt>--walk-reflogs</tt> is in use.  + error to use this option unless <code>--walk-reflogs</code> is in use.   </p>   </dd>   <dt class="hdlist1">  @@ -951,11 +949,11 @@  <p>   Limit the commits output to ones with log message that   matches the specified pattern (regular expression). With  - more than one <tt>--grep=&lt;pattern&gt;</tt>, commits whose message  + more than one <code>--grep=&lt;pattern&gt;</code>, commits whose message   matches any of the given patterns are chosen (but see  - <tt>--all-match</tt>).  + <code>--all-match</code>).   </p>  -<div class="paragraph"><p>When <tt>--show-notes</tt> is in effect, the message from the notes as  +<div class="paragraph"><p>When <code>--show-notes</code> is in effect, the message from the notes as   if it is part of the log message.</p></div>   </dd>   <dt class="hdlist1">  @@ -963,7 +961,7 @@  </dt>   <dd>   <p>  - Limit the commits output to ones that match all given <tt>--grep</tt>,  + Limit the commits output to ones that match all given <code>--grep</code>,   instead of ones that match at least one.   </p>   </dd>  @@ -1034,7 +1032,7 @@  </dt>   <dd>   <p>  - Print only merge commits. This is exactly the same as <tt>--min-parents=2</tt>.  + Print only merge commits. This is exactly the same as <code>--min-parents=2</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1043,7 +1041,7 @@  <dd>   <p>   Do not print commits with more than one parent. This is  - exactly the same as <tt>--max-parents=1</tt>.  + exactly the same as <code>--max-parents=1</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1061,13 +1059,13 @@  <dd>   <p>   Show only commits which have at least (or at most) that many parent  - commits. In particular, <tt>--max-parents=1</tt> is the same as <tt>--no-merges</tt>,  - <tt>--min-parents=2</tt> is the same as <tt>--merges</tt>. <tt>--max-parents=0</tt>  - gives all root commits and <tt>--min-parents=3</tt> all octopus merges.  + commits. In particular, <code>--max-parents=1</code> is the same as <code>--no-merges</code>,  + <code>--min-parents=2</code> is the same as <code>--merges</code>. <code>--max-parents=0</code>  + gives all root commits and <code>--min-parents=3</code> all octopus merges.   </p>  -<div class="paragraph"><p><tt>--no-min-parents</tt> and <tt>--no-max-parents</tt> reset these limits (to no limit)  -again. Equivalent forms are <tt>--min-parents=0</tt> (any commit has 0 or more  -parents) and <tt>--max-parents=-1</tt> (negative numbers denote no upper limit).</p></div>  +<div class="paragraph"><p><code>--no-min-parents</code> and <code>--no-max-parents</code> reset these limits (to no limit)  +again. Equivalent forms are <code>--min-parents=0</code> (any commit has 0 or more  +parents) and <code>--max-parents=-1</code> (negative numbers denote no upper limit).</p></div>   </dd>   <dt class="hdlist1">   --first-parent  @@ -1089,7 +1087,7 @@  <dd>   <p>   Reverses the meaning of the <em>&#94;</em> prefix (or lack thereof)  - for all following revision specifiers, up to the next <tt>--not</tt>.  + for all following revision specifiers, up to the next <code>--not</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1097,7 +1095,7 @@  </dt>   <dd>   <p>  - Pretend as if all the refs in <tt>refs/</tt> are listed on the  + Pretend as if all the refs in <code>refs/</code> are listed on the   command line as <em>&lt;commit&gt;</em>.   </p>   </dd>  @@ -1106,7 +1104,7 @@  </dt>   <dd>   <p>  - Pretend as if all the refs in <tt>refs/heads</tt> are listed  + Pretend as if all the refs in <code>refs/heads</code> are listed   on the command line as <em>&lt;commit&gt;</em>. If <em>&lt;pattern&gt;</em> is given, limit   branches to ones matching given shell glob. If pattern lacks <em>?</em>,   <em>&#42;</em>, or <em>[</em>, <em>/&#42;</em> at the end is implied.  @@ -1117,7 +1115,7 @@  </dt>   <dd>   <p>  - Pretend as if all the refs in <tt>refs/tags</tt> are listed  + Pretend as if all the refs in <code>refs/tags</code> are listed   on the command line as <em>&lt;commit&gt;</em>. If <em>&lt;pattern&gt;</em> is given, limit   tags to ones matching given shell glob. If pattern lacks <em>?</em>, <em>&#42;</em>,   or <em>[</em>, <em>/&#42;</em> at the end is implied.  @@ -1128,7 +1126,7 @@  </dt>   <dd>   <p>  - Pretend as if all the refs in <tt>refs/remotes</tt> are listed  + Pretend as if all the refs in <code>refs/remotes</code> are listed   on the command line as <em>&lt;commit&gt;</em>. If <em>&lt;pattern&gt;</em> is given, limit   remote-tracking branches to ones matching given shell glob.   If pattern lacks <em>?</em>, <em>&#42;</em>, or <em>[</em>, <em>/&#42;</em> at the end is implied.  @@ -1150,17 +1148,17 @@  </dt>   <dd>   <p>  - Do not include refs matching <em>&lt;glob-pattern&gt;</em> that the next <tt>--all</tt>,  - <tt>--branches</tt>, <tt>--tags</tt>, <tt>--remotes</tt>, or <tt>--glob</tt> would otherwise  + Do not include refs matching <em>&lt;glob-pattern&gt;</em> that the next <code>--all</code>,  + <code>--branches</code>, <code>--tags</code>, <code>--remotes</code>, or <code>--glob</code> would otherwise   consider. Repetitions of this option accumulate exclusion patterns  - up to the next <tt>--all</tt>, <tt>--branches</tt>, <tt>--tags</tt>, <tt>--remotes</tt>, or  - <tt>--glob</tt> option (other options or arguments do not clear  + up to the next <code>--all</code>, <code>--branches</code>, <code>--tags</code>, <code>--remotes</code>, or  + <code>--glob</code> option (other options or arguments do not clear   accumlated patterns).   </p>  -<div class="paragraph"><p>The patterns given should not begin with <tt>refs/heads</tt>, <tt>refs/tags</tt>, or  -<tt>refs/remotes</tt> when applied to <tt>--branches</tt>, <tt>--tags</tt>, or <tt>--remotes</tt>,  -respectively, and they must begin with <tt>refs/</tt> when applied to <tt>--glob</tt>  -or <tt>--all</tt>. If a trailing <em>/&#42;</em> is intended, it must be given  +<div class="paragraph"><p>The patterns given should not begin with <code>refs/heads</code>, <code>refs/tags</code>, or  +<code>refs/remotes</code> when applied to <code>--branches</code>, <code>--tags</code>, or <code>--remotes</code>,  +respectively, and they must begin with <code>refs/</code> when applied to <code>--glob</code>  +or <code>--all</code>. If a trailing <em>/&#42;</em> is intended, it must be given   explicitly.</p></div>   </dd>   <dt class="hdlist1">  @@ -1192,7 +1190,7 @@  is primarily meant to allow the caller to   test the exit status to see if a range of objects is fully   connected (or not). It is faster than redirecting stdout  - to <tt>/dev/null</tt> as the output does not have to be formatted.  + to <code>/dev/null</code> as the output does not have to be formatted.   </p>   </dd>   <dt class="hdlist1">  @@ -1200,8 +1198,8 @@  </dt>   <dd>   <p>  - Like <tt>--cherry-pick</tt> (see below) but mark equivalent commits  - with <tt>=</tt> rather than omitting them, and inequivalent ones with <tt>+</tt>.  + Like <code>--cherry-pick</code> (see below) but mark equivalent commits  + with <code>=</code> rather than omitting them, and inequivalent ones with <code>+</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1213,10 +1211,10 @@  another commit on the &#8220;other side&#8221; when the set of   commits are limited with symmetric difference.   </p>  -<div class="paragraph"><p>For example, if you have two branches, <tt>A</tt> and <tt>B</tt>, a usual way  +<div class="paragraph"><p>For example, if you have two branches, <code>A</code> and <code>B</code>, a usual way   to list all commits on only one side of them is with  -<tt>--left-right</tt> (see the example below in the description of  -the <tt>--left-right</tt> option). However, it shows the commits that were  +<code>--left-right</code> (see the example below in the description of  +the <code>--left-right</code> option). However, it shows the commits that were   cherry-picked from the other branch (for example, &#8220;3rd on b&#8221; may be   cherry-picked from branch A). With this option, such pairs of commits are   excluded from the output.</p></div>  @@ -1230,13 +1228,13 @@  <dd>   <p>   List only commits on the respective side of a symmetric range,  - i.e. only those which would be marked <tt>&lt;</tt> resp. <tt>&gt;</tt> by  - <tt>--left-right</tt>.  + i.e. only those which would be marked <code>&lt;</code> resp. <code>&gt;</code> by  + <code>--left-right</code>.   </p>  -<div class="paragraph"><p>For example, <tt>--cherry-pick --right-only A...B</tt> omits those  -commits from <tt>B</tt> which are in <tt>A</tt> or are patch-equivalent to a commit in  -<tt>A</tt>. In other words, this lists the <tt>+</tt> commits from <tt>git cherry A B</tt>.  -More precisely, <tt>--cherry-pick --right-only --no-merges</tt> gives the exact  +<div class="paragraph"><p>For example, <code>--cherry-pick --right-only A...B</code> omits those  +commits from <code>B</code> which are in <code>A</code> or are patch-equivalent to a commit in  +<code>A</code>. In other words, this lists the <code>+</code> commits from <code>git cherry A B</code>.  +More precisely, <code>--cherry-pick --right-only --no-merges</code> gives the exact   list.</p></div>   </dd>   <dt class="hdlist1">  @@ -1244,11 +1242,11 @@  </dt>   <dd>   <p>  - A synonym for <tt>--right-only --cherry-mark --no-merges</tt>; useful to  + A synonym for <code>--right-only --cherry-mark --no-merges</code>; useful to   limit the output to the commits on our side and mark those that   have been applied to the other side of a forked history with  - <tt>git log --cherry upstream...mybranch</tt>, similar to  - <tt>git cherry upstream mybranch</tt>.  + <code>git log --cherry upstream...mybranch</code>, similar to  + <code>git cherry upstream mybranch</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1265,14 +1263,14 @@  exclude (that is, <em>&#94;commit</em>, <em>commit1..commit2</em>,   and <em>commit1...commit2</em> notations cannot be used).   </p>  -<div class="paragraph"><p>With <tt>--pretty</tt> format other than <tt>oneline</tt> (for obvious reasons),  +<div class="paragraph"><p>With <code>--pretty</code> format other than <code>oneline</code> (for obvious reasons),   this causes the output to have two extra lines of information   taken from the reflog. By default, <em>commit@{Nth}</em> notation is   used in the output. When the starting commit is specified as   <em>commit@{now}</em>, output also uses <em>commit@{timestamp}</em> notation  -instead. Under <tt>--pretty=oneline</tt>, the commit message is  +instead. Under <code>--pretty=oneline</code>, the commit message is   prefixed with this information on the same line.  -This option cannot be combined with <tt>--reverse</tt>.  +This option cannot be combined with <code>--reverse</code>.   See also <a href="git-reflog.html">git-reflog(1)</a>.</p></div>   </dd>   <dt class="hdlist1">  @@ -1290,7 +1288,7 @@  <dd>   <p>   Output excluded boundary commits. Boundary commits are  - prefixed with <tt>-</tt>.  + prefixed with <code>-</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1299,7 +1297,7 @@  <dd>   <p>   Try to speed up the traversal using the pack bitmap index (if  - one is available). Note that when traversing with <tt>--objects</tt>,  + one is available). Note that when traversing with <code>--objects</code>,   trees and blobs will not have their associated path printed.   </p>   </dd>  @@ -1375,7 +1373,7 @@  </dt>   <dd>   <p>  - Additional option to <tt>--full-history</tt> to remove some needless  + Additional option to <code>--full-history</code> to remove some needless   merges from the resulting history, as there are no selected   commits contributing to this merge.   </p>  @@ -1394,70 +1392,70 @@  </dd>   </dl></div>   <div class="paragraph"><p>A more detailed explanation follows.</p></div>  -<div class="paragraph"><p>Suppose you specified <tt>foo</tt> as the &lt;paths&gt;. We shall call commits  -that modify <tt>foo</tt> !TREESAME, and the rest TREESAME. (In a diff  -filtered for <tt>foo</tt>, they look different and equal, respectively.)</p></div>  +<div class="paragraph"><p>Suppose you specified <code>foo</code> as the &lt;paths&gt;. We shall call commits  +that modify <code>foo</code> !TREESAME, and the rest TREESAME. (In a diff  +filtered for <code>foo</code>, they look different and equal, respectively.)</p></div>   <div class="paragraph"><p>In the following, we will always refer to the same example history to   illustrate the differences between simplification settings. We assume  -that you are filtering for a file <tt>foo</tt> in this commit graph:</p></div>  +that you are filtering for a file <code>foo</code> in this commit graph:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> .-A---M---N---O---P---Q  +<pre><code> .-A---M---N---O---P---Q   / / / / / /   I B C D E Y   \ / / / / /  - `-------------' X</tt></pre>  + `-------------' X</code></pre>   </div></div>   <div class="paragraph"><p>The horizontal line of history A---Q is taken to be the first parent of   each merge. The commits are:</p></div>   <div class="ulist"><ul>   <li>   <p>  -<tt>I</tt> is the initial commit, in which <tt>foo</tt> exists with contents  - &#8220;asdf&#8221;, and a file <tt>quux</tt> exists with contents &#8220;quux&#8221;. Initial  - commits are compared to an empty tree, so <tt>I</tt> is !TREESAME.  +<code>I</code> is the initial commit, in which <code>foo</code> exists with contents  + &#8220;asdf&#8221;, and a file <code>quux</code> exists with contents &#8220;quux&#8221;. Initial  + commits are compared to an empty tree, so <code>I</code> is !TREESAME.   </p>   </li>   <li>   <p>  -In <tt>A</tt>, <tt>foo</tt> contains just &#8220;foo&#8221;.  +In <code>A</code>, <code>foo</code> contains just &#8220;foo&#8221;.   </p>   </li>   <li>   <p>  -<tt>B</tt> contains the same change as <tt>A</tt>. Its merge <tt>M</tt> is trivial and  +<code>B</code> contains the same change as <code>A</code>. Its merge <code>M</code> is trivial and   hence TREESAME to all parents.   </p>   </li>   <li>   <p>  -<tt>C</tt> does not change <tt>foo</tt>, but its merge <tt>N</tt> changes it to &#8220;foobar&#8221;,  +<code>C</code> does not change <code>foo</code>, but its merge <code>N</code> changes it to &#8220;foobar&#8221;,   so it is not TREESAME to any parent.   </p>   </li>   <li>   <p>  -<tt>D</tt> sets <tt>foo</tt> to &#8220;baz&#8221;. Its merge <tt>O</tt> combines the strings from  - <tt>N</tt> and <tt>D</tt> to &#8220;foobarbaz&#8221;; i.e., it is not TREESAME to any parent.  +<code>D</code> sets <code>foo</code> to &#8220;baz&#8221;. Its merge <code>O</code> combines the strings from  + <code>N</code> and <code>D</code> to &#8220;foobarbaz&#8221;; i.e., it is not TREESAME to any parent.   </p>   </li>   <li>   <p>  -<tt>E</tt> changes <tt>quux</tt> to &#8220;xyzzy&#8221;, and its merge <tt>P</tt> combines the  - strings to &#8220;quux xyzzy&#8221;. <tt>P</tt> is TREESAME to <tt>O</tt>, but not to <tt>E</tt>.  +<code>E</code> changes <code>quux</code> to &#8220;xyzzy&#8221;, and its merge <code>P</code> combines the  + strings to &#8220;quux xyzzy&#8221;. <code>P</code> is TREESAME to <code>O</code>, but not to <code>E</code>.   </p>   </li>   <li>   <p>  -<tt>X</tt> is an independent root commit that added a new file <tt>side</tt>, and <tt>Y</tt>  - modified it. <tt>Y</tt> is TREESAME to <tt>X</tt>. Its merge <tt>Q</tt> added <tt>side</tt> to <tt>P</tt>, and  - <tt>Q</tt> is TREESAME to <tt>P</tt>, but not to <tt>Y</tt>.  +<code>X</code> is an independent root commit that added a new file <code>side</code>, and <code>Y</code>  + modified it. <code>Y</code> is TREESAME to <code>X</code>. Its merge <code>Q</code> added <code>side</code> to <code>P</code>, and  + <code>Q</code> is TREESAME to <code>P</code>, but not to <code>Y</code>.   </p>   </li>   </ul></div>  -<div class="paragraph"><p><tt>rev-list</tt> walks backwards through history, including or excluding  -commits based on whether <tt>--full-history</tt> and/or parent rewriting  -(via <tt>--parents</tt> or <tt>--children</tt>) are used. The following settings  +<div class="paragraph"><p><code>rev-list</code> walks backwards through history, including or excluding  +commits based on whether <code>--full-history</code> and/or parent rewriting  +(via <code>--parents</code> or <code>--children</code>) are used. The following settings   are available.</p></div>   <div class="dlist"><dl>   <dt class="hdlist1">  @@ -1466,7 +1464,7 @@  <dd>   <p>   Commits are included if they are not TREESAME to any parent  - (though this can be changed, see <tt>--sparse</tt> below). If the  + (though this can be changed, see <code>--sparse</code> below). If the   commit was a merge, and it was TREESAME to one parent, follow   only that parent. (Even if there are several TREESAME   parents, follow only one of them.) Otherwise, follow all  @@ -1475,15 +1473,15 @@  <div class="paragraph"><p>This results in:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> .-A---N---O  +<pre><code> .-A---N---O   / / /  - I---------D</tt></pre>  + I---------D</code></pre>   </div></div>   <div class="paragraph"><p>Note how the rule to only follow the TREESAME parent, if one is  -available, removed <tt>B</tt> from consideration entirely. <tt>C</tt> was  -considered via <tt>N</tt>, but is TREESAME. Root commits are compared to an  -empty tree, so <tt>I</tt> is !TREESAME.</p></div>  -<div class="paragraph"><p>Parent/child relations are only visible with <tt>--parents</tt>, but that does  +available, removed <code>B</code> from consideration entirely. <code>C</code> was  +considered via <code>N</code>, but is TREESAME. Root commits are compared to an  +empty tree, so <code>I</code> is !TREESAME.</p></div>  +<div class="paragraph"><p>Parent/child relations are only visible with <code>--parents</code>, but that does   not affect the commits selected in default mode, so we have shown the   parent lines.</p></div>   </dd>  @@ -1500,10 +1498,10 @@  </p>   <div class="listingblock">   <div class="content">  -<pre><tt> I A B N D O P Q</tt></pre>  +<pre><code> I A B N D O P Q</code></pre>   </div></div>  -<div class="paragraph"><p><tt>M</tt> was excluded because it is TREESAME to both parents. <tt>E</tt>,  -<tt>C</tt> and <tt>B</tt> were all walked, but only <tt>B</tt> was !TREESAME, so the others  +<div class="paragraph"><p><code>M</code> was excluded because it is TREESAME to both parents. <code>E</code>,  +<code>C</code> and <code>B</code> were all walked, but only <code>B</code> was !TREESAME, so the others   do not appear.</p></div>   <div class="paragraph"><p>Note that without parent rewriting, it is not really possible to talk   about the parent/child relationships between the commits, so we show  @@ -1515,23 +1513,23 @@  <dd>   <p>   Ordinary commits are only included if they are !TREESAME  - (though this can be changed, see <tt>--sparse</tt> below).  + (though this can be changed, see <code>--sparse</code> below).   </p>   <div class="paragraph"><p>Merges are always included. However, their parent list is rewritten:   Along each parent, prune away commits that are not included   themselves. This results in</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> .-A---M---N---O---P---Q  +<pre><code> .-A---M---N---O---P---Q   / / / / /   I B / D /   \ / / / /  - `-------------'</tt></pre>  + `-------------'</code></pre>   </div></div>  -<div class="paragraph"><p>Compare to <tt>--full-history</tt> without rewriting above. Note that <tt>E</tt>  +<div class="paragraph"><p>Compare to <code>--full-history</code> without rewriting above. Note that <code>E</code>   was pruned away because it is TREESAME, but the parent list of P was  -rewritten to contain <tt>E</tt>'s parent <tt>I</tt>. The same happened for <tt>C</tt> and  -<tt>N</tt>, and <tt>X</tt>, <tt>Y</tt> and <tt>Q</tt>.</p></div>  +rewritten to contain <code>E</code>'s parent <code>I</code>. The same happened for <code>C</code> and  +<code>N</code>, and <code>X</code>, <code>Y</code> and <code>Q</code>.</p></div>   </dd>   </dl></div>   <div class="paragraph"><p>In addition to the above settings, you can change whether TREESAME  @@ -1553,7 +1551,7 @@  <p>   All commits that are walked are included.   </p>  -<div class="paragraph"><p>Note that without <tt>--full-history</tt>, this still simplifies merges: if  +<div class="paragraph"><p>Note that without <code>--full-history</code>, this still simplifies merges: if   one of the parents is TREESAME, we follow only that one, so the other   sides of the merge are never walked.</p></div>   </dd>  @@ -1563,21 +1561,21 @@  <dd>   <p>   First, build a history graph in the same way that  - <tt>--full-history</tt> with parent rewriting does (see above).  + <code>--full-history</code> with parent rewriting does (see above).   </p>  -<div class="paragraph"><p>Then simplify each commit <tt>C</tt> to its replacement <tt>C'</tt> in the final  +<div class="paragraph"><p>Then simplify each commit <code>C</code> to its replacement <code>C'</code> in the final   history according to the following rules:</p></div>   <div class="openblock">   <div class="content">   <div class="ulist"><ul>   <li>   <p>  -Set <tt>C'</tt> to <tt>C</tt>.  +Set <code>C'</code> to <code>C</code>.   </p>   </li>   <li>   <p>  -Replace each parent <tt>P</tt> of <tt>C'</tt> with its simplification <tt>P'</tt>. In  +Replace each parent <code>P</code> of <code>C'</code> with its simplification <code>P'</code>. In   the process, drop parents that are ancestors of other parents or that are   root commits TREESAME to an empty tree, and remove duplicates, but take care   to never drop all parents that we are TREESAME to.  @@ -1585,7 +1583,7 @@  </li>   <li>   <p>  -If after this parent rewriting, <tt>C'</tt> is a root or merge commit (has  +If after this parent rewriting, <code>C'</code> is a root or merge commit (has   zero or &gt;1 parents), a boundary commit, or !TREESAME, it remains.   Otherwise, it is replaced with its only parent.   </p>  @@ -1593,35 +1591,35 @@  </ul></div>   </div></div>   <div class="paragraph"><p>The effect of this is best shown by way of comparing to  -<tt>--full-history</tt> with parent rewriting. The example turns into:</p></div>  +<code>--full-history</code> with parent rewriting. The example turns into:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> .-A---M---N---O  +<pre><code> .-A---M---N---O   / / /   I B D   \ / /  - `---------'</tt></pre>  + `---------'</code></pre>   </div></div>  -<div class="paragraph"><p>Note the major differences in <tt>N</tt>, <tt>P</tt>, and <tt>Q</tt> over <tt>--full-history</tt>:</p></div>  +<div class="paragraph"><p>Note the major differences in <code>N</code>, <code>P</code>, and <code>Q</code> over <code>--full-history</code>:</p></div>   <div class="openblock">   <div class="content">   <div class="ulist"><ul>   <li>   <p>  -<tt>N</tt>'s parent list had <tt>I</tt> removed, because it is an ancestor of the  - other parent <tt>M</tt>. Still, <tt>N</tt> remained because it is !TREESAME.  +<code>N</code>'s parent list had <code>I</code> removed, because it is an ancestor of the  + other parent <code>M</code>. Still, <code>N</code> remained because it is !TREESAME.   </p>   </li>   <li>   <p>  -<tt>P</tt>'s parent list similarly had <tt>I</tt> removed. <tt>P</tt> was then  +<code>P</code>'s parent list similarly had <code>I</code> removed. <code>P</code> was then   removed completely, because it had one parent and is TREESAME.   </p>   </li>   <li>   <p>  -<tt>Q</tt>'s parent list had <tt>Y</tt> simplified to <tt>X</tt>. <tt>X</tt> was then removed, because it  - was a TREESAME root. <tt>Q</tt> was then removed completely, because it had one  +<code>Q</code>'s parent list had <code>Y</code> simplified to <code>X</code>. <code>X</code> was then removed, because it  + was a TREESAME root. <code>Q</code> was then removed completely, because it had one   parent and is TREESAME.   </p>   </li>  @@ -1644,34 +1642,34 @@  <div class="paragraph"><p>As an example use case, consider the following commit history:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> D---E-------F  +<pre><code> D---E-------F   / \ \   B---C---G---H---I---J   / \  - A-------K---------------L--M</tt></pre>  + A-------K---------------L--M</code></pre>   </div></div>  -<div class="paragraph"><p>A regular <em>D..M</em> computes the set of commits that are ancestors of <tt>M</tt>,  -but excludes the ones that are ancestors of <tt>D</tt>. This is useful to see  -what happened to the history leading to <tt>M</tt> since <tt>D</tt>, in the sense  -that &#8220;what does <tt>M</tt> have that did not exist in <tt>D</tt>&#8221;. The result in this  -example would be all the commits, except <tt>A</tt> and <tt>B</tt> (and <tt>D</tt> itself,  +<div class="paragraph"><p>A regular <em>D..M</em> computes the set of commits that are ancestors of <code>M</code>,  +but excludes the ones that are ancestors of <code>D</code>. This is useful to see  +what happened to the history leading to <code>M</code> since <code>D</code>, in the sense  +that &#8220;what does <code>M</code> have that did not exist in <code>D</code>&#8221;. The result in this  +example would be all the commits, except <code>A</code> and <code>B</code> (and <code>D</code> itself,   of course).</p></div>  -<div class="paragraph"><p>When we want to find out what commits in <tt>M</tt> are contaminated with the  -bug introduced by <tt>D</tt> and need fixing, however, we might want to view  -only the subset of <em>D..M</em> that are actually descendants of <tt>D</tt>, i.e.  -excluding <tt>C</tt> and <tt>K</tt>. This is exactly what the <tt>--ancestry-path</tt>  +<div class="paragraph"><p>When we want to find out what commits in <code>M</code> are contaminated with the  +bug introduced by <code>D</code> and need fixing, however, we might want to view  +only the subset of <em>D..M</em> that are actually descendants of <code>D</code>, i.e.  +excluding <code>C</code> and <code>K</code>. This is exactly what the <code>--ancestry-path</code>   option does. Applied to the <em>D..M</em> range, it results in:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> E-------F  +<pre><code> E-------F   \ \   G---H---I---J   \  - L--M</tt></pre>  + L--M</code></pre>   </div></div>   </dd>   </dl></div>  -<div class="paragraph"><p>The <tt>--simplify-by-decoration</tt> option allows you to view only the  +<div class="paragraph"><p>The <code>--simplify-by-decoration</code> option allows you to view only the   big picture of the topology of the history, by omitting commits   that are not referenced by tags. Commits are marked as !TREESAME   (in other words, kept after history simplification rules described  @@ -1689,20 +1687,20 @@  <p>   Limit output to the one commit object which is roughly halfway between   included and excluded commits. Note that the bad bisection ref  - <tt>refs/bisect/bad</tt> is added to the included commits (if it  - exists) and the good bisection refs <tt>refs/bisect/good-*</tt> are  + <code>refs/bisect/bad</code> is added to the included commits (if it  + exists) and the good bisection refs <code>refs/bisect/good-*</code> are   added to the excluded commits (if they exist). Thus, supposing there  - are no refs in <tt>refs/bisect/</tt>, if  + are no refs in <code>refs/bisect/</code>, if   </p>   <div class="listingblock">   <div class="content">  -<pre><tt> $ git rev-list --bisect foo ^bar ^baz</tt></pre>  +<pre><code> $ git rev-list --bisect foo ^bar ^baz</code></pre>   </div></div>   <div class="paragraph"><p>outputs <em>midpoint</em>, the output of the two commands</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> $ git rev-list foo ^midpoint  - $ git rev-list midpoint ^bar ^baz</tt></pre>  +<pre><code> $ git rev-list foo ^midpoint  + $ git rev-list midpoint ^bar ^baz</code></pre>   </div></div>   <div class="paragraph"><p>would be of roughly the same length. Finding the change which   introduces a regression is thus reduced to a binary search: repeatedly  @@ -1714,16 +1712,16 @@  </dt>   <dd>   <p>  - This calculates the same as <tt>--bisect</tt>, except that refs in  - <tt>refs/bisect/</tt> are not used, and except that this outputs  + This calculates the same as <code>--bisect</code>, except that refs in  + <code>refs/bisect/</code> are not used, and except that this outputs   text ready to be eval&#8217;ed by the shell. These lines will assign the  - name of the midpoint revision to the variable <tt>bisect_rev</tt>, and the  - expected number of commits to be tested after <tt>bisect_rev</tt> is tested  - to <tt>bisect_nr</tt>, the expected number of commits to be tested if  - <tt>bisect_rev</tt> turns out to be good to <tt>bisect_good</tt>, the expected  - number of commits to be tested if <tt>bisect_rev</tt> turns out to be bad to  - <tt>bisect_bad</tt>, and the number of commits we are bisecting right now to  - <tt>bisect_all</tt>.  + name of the midpoint revision to the variable <code>bisect_rev</code>, and the  + expected number of commits to be tested after <code>bisect_rev</code> is tested  + to <code>bisect_nr</code>, the expected number of commits to be tested if  + <code>bisect_rev</code> turns out to be good to <code>bisect_good</code>, the expected  + number of commits to be tested if <code>bisect_rev</code> turns out to be bad to  + <code>bisect_bad</code>, and the number of commits we are bisecting right now to  + <code>bisect_all</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1733,16 +1731,16 @@  <p>   This outputs all the commit objects between the included and excluded   commits, ordered by their distance to the included and excluded  - commits. Refs in <tt>refs/bisect/</tt> are not used. The farthest  + commits. Refs in <code>refs/bisect/</code> are not used. The farthest   from them is displayed first. (This is the only one displayed by  - <tt>--bisect</tt>.)  + <code>--bisect</code>.)   </p>   <div class="paragraph"><p>This is useful because it makes it easy to choose a good commit to   test when you want to avoid to test some of them for some reason (they   may not compile for example).</p></div>  -<div class="paragraph"><p>This option can be used along with <tt>--bisect-vars</tt>, in this case,  +<div class="paragraph"><p>This option can be used along with <code>--bisect-vars</code>, in this case,   after all the sorted commit objects, there will be the same text as if  -<tt>--bisect-vars</tt> had been used alone.</p></div>  +<code>--bisect-vars</code> had been used alone.</p></div>   </dd>   </dl></div>   </div>  @@ -1780,14 +1778,14 @@  <div class="paragraph"><p>For example, in a commit history like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> ---1----2----4----7  +<pre><code> ---1----2----4----7   \ \  - 3----5----6----8---</tt></pre>  + 3----5----6----8---</code></pre>   </div></div>  -<div class="paragraph"><p>where the numbers denote the order of commit timestamps, <tt>git  -rev-list</tt> and friends with <tt>--date-order</tt> show the commits in the  +<div class="paragraph"><p>where the numbers denote the order of commit timestamps, <code>git  +rev-list</code> and friends with <code>--date-order</code> show the commits in the   timestamp order: 8 7 6 5 4 3 2 1.</p></div>  -<div class="paragraph"><p>With <tt>--topo-order</tt>, they would show 8 6 5 3 7 4 2 1 (or 8 7 4 2 6 5  +<div class="paragraph"><p>With <code>--topo-order</code>, they would show 8 6 5 3 7 4 2 1 (or 8 7 4 2 6 5   3 1); some older commits are shown before newer ones in order to   avoid showing the commits from two parallel development track mixed   together.</p></div>  @@ -1798,7 +1796,7 @@  <dd>   <p>   Output the commits in reverse order.  - Cannot be combined with <tt>--walk-reflogs</tt>.  + Cannot be combined with <code>--walk-reflogs</code>.   </p>   </dd>   </dl></div>  @@ -1813,7 +1811,7 @@  <dd>   <p>   Print the object IDs of any object referenced by the listed  - commits. <tt>--objects foo ^bar</tt> thus means &#8220;send me  + commits. <code>--objects foo ^bar</code> thus means &#8220;send me   all object IDs which I need to download if I have the commit   object <em>bar</em> but not <em>foo</em>&#8221;.   </p>  @@ -1823,7 +1821,7 @@  </dt>   <dd>   <p>  - Similar to <tt>--objects</tt>, but also print the IDs of excluded  + Similar to <code>--objects</code>, but also print the IDs of excluded   commits prefixed with a &#8220;-&#8221; character. This is used by   <a href="git-pack-objects.html">git-pack-objects(1)</a> to build &#8220;thin&#8221; pack, which records   objects in deltified form based on objects contained in these  @@ -1835,7 +1833,7 @@  </dt>   <dd>   <p>  - Only useful with <tt>--objects</tt>; print the object IDs that are not  + Only useful with <code>--objects</code>; print the object IDs that are not   in packs.   </p>   </dd>  @@ -1846,8 +1844,8 @@  <p>   Only show the given commits, but do not traverse their ancestors.   This has no effect if a range is specified. If the argument  - <tt>unsorted</tt> is given, the commits are shown in the order they were  - given on the command line. Otherwise (if <tt>sorted</tt> or no argument  + <code>unsorted</code> is given, the commits are shown in the order they were  + given on the command line. Otherwise (if <code>sorted</code> or no argument   was given), the commits are shown in reverse chronological order   by commit time.   </p>  @@ -1857,7 +1855,7 @@  </dt>   <dd>   <p>  - Overrides a previous <tt>--no-walk</tt>.  + Overrides a previous <code>--no-walk</code>.   </p>   </dd>   </dl></div>  @@ -1904,7 +1902,7 @@  <dd>   <p>   Show the full 40-byte hexadecimal commit object name. This negates  - <tt>--abbrev-commit</tt> and those options which imply it such as  + <code>--abbrev-commit</code> and those options which imply it such as   "--oneline". It also overrides the <em>log.abbrevCommit</em> variable.   </p>   </dd>  @@ -1936,15 +1934,15 @@  <p>   Show the notes (see <a href="git-notes.html">git-notes(1)</a>) that annotate the   commit, when showing the commit log message. This is the default  - for <tt>git log</tt>, <tt>git show</tt> and <tt>git whatchanged</tt> commands when  - there is no <tt>--pretty</tt>, <tt>--format</tt>, or <tt>--oneline</tt> option given  + for <code>git log</code>, <code>git show</code> and <code>git whatchanged</code> commands when  + there is no <code>--pretty</code>, <code>--format</code>, or <code>--oneline</code> option given   on the command line.   </p>   <div class="paragraph"><p>By default, the notes shown are from the notes refs listed in the   <em>core.notesRef</em> and <em>notes.displayRef</em> variables (or corresponding   environment overrides). See <a href="git-config.html">git-config(1)</a> for more details.</p></div>   <div class="paragraph"><p>With an optional <em>&lt;ref&gt;</em> argument, show this notes ref instead of the  -default notes ref(s). The ref is taken to be in <tt>refs/notes/</tt> if it  +default notes ref(s). The ref is taken to be in <code>refs/notes/</code> if it   is not qualified.</p></div>   <div class="paragraph"><p>Multiple --notes options can be combined to control which notes are   being displayed. Examples: "--notes=foo" will show only notes from  @@ -1956,7 +1954,7 @@  </dt>   <dd>   <p>  - Do not show notes. This negates the above <tt>--notes</tt> option, by  + Do not show notes. This negates the above <code>--notes</code> option, by   resetting the list of notes refs from which notes are shown.   Options are parsed in the order given on the command line, so e.g.   "--notes --notes=foo --no-notes --notes=bar" will only show notes  @@ -1981,7 +1979,7 @@  <dd>   <p>   Check the validity of a signed commit object by passing the signature  - to <tt>gpg --verify</tt> and show the output.  + to <code>gpg --verify</code> and show the output.   </p>   </dd>   <dt class="hdlist1">  @@ -1989,27 +1987,47 @@  </dt>   <dd>   <p>  - Synonym for <tt>--date=relative</tt>.  + Synonym for <code>--date=relative</code>.   </p>   </dd>   <dt class="hdlist1">  ---date=(relative|local|default|iso|rfc|short|raw)  +--date=(relative|local|default|iso|iso-strict|rfc|short|raw)   </dt>   <dd>   <p>   Only takes effect for dates shown in human-readable format, such  - as when using <tt>--pretty</tt>. <tt>log.date</tt> config variable sets a default  - value for the log command&#8217;s <tt>--date</tt> option.  + as when using <code>--pretty</code>. <code>log.date</code> config variable sets a default  + value for the log command&#8217;s <code>--date</code> option.   </p>  -<div class="paragraph"><p><tt>--date=relative</tt> shows dates relative to the current time,  +<div class="paragraph"><p><code>--date=relative</code> shows dates relative to the current time,   e.g. &#8220;2 hours ago&#8221;.</p></div>  -<div class="paragraph"><p><tt>--date=local</tt> shows timestamps in user&#8217;s local time zone.</p></div>  -<div class="paragraph"><p><tt>--date=iso</tt> (or <tt>--date=iso8601</tt>) shows timestamps in ISO 8601 format.</p></div>  -<div class="paragraph"><p><tt>--date=rfc</tt> (or <tt>--date=rfc2822</tt>) shows timestamps in RFC 2822  +<div class="paragraph"><p><code>--date=local</code> shows timestamps in user&#8217;s local time zone.</p></div>  +<div class="paragraph"><p><code>--date=iso</code> (or <code>--date=iso8601</code>) shows timestamps in a ISO 8601-like format.  +The differences to the strict ISO 8601 format are:</p></div>  +<div class="ulist"><ul>  +<li>  +<p>  +a space instead of the <code>T</code> date/time delimiter  +</p>  +</li>  +<li>  +<p>  +a space between time and time zone  +</p>  +</li>  +<li>  +<p>  +no colon between hours and minutes of the time zone  +</p>  +</li>  +</ul></div>  +<div class="paragraph"><p><code>--date=iso-strict</code> (or <code>--date=iso8601-strict</code>) shows timestamps in strict  +ISO 8601 format.</p></div>  +<div class="paragraph"><p><code>--date=rfc</code> (or <code>--date=rfc2822</code>) shows timestamps in RFC 2822   format, often found in email messages.</p></div>  -<div class="paragraph"><p><tt>--date=short</tt> shows only the date, but not the time, in <tt>YYYY-MM-DD</tt> format.</p></div>  -<div class="paragraph"><p><tt>--date=raw</tt> shows the date in the internal raw Git format <tt>%s %z</tt> format.</p></div>  -<div class="paragraph"><p><tt>--date=default</tt> shows timestamps in the original time zone  +<div class="paragraph"><p><code>--date=short</code> shows only the date, but not the time, in <code>YYYY-MM-DD</code> format.</p></div>  +<div class="paragraph"><p><code>--date=raw</code> shows the date in the internal raw Git format <code>%s %z</code> format.</p></div>  +<div class="paragraph"><p><code>--date=default</code> shows timestamps in the original time zone   (either committer&#8217;s or author&#8217;s).</p></div>   </dd>   <dt class="hdlist1">  @@ -2053,30 +2071,30 @@  <dd>   <p>   Mark which side of a symmetric diff a commit is reachable from.  - Commits from the left side are prefixed with <tt>&lt;</tt> and those from  - the right with <tt>&gt;</tt>. If combined with <tt>--boundary</tt>, those  - commits are prefixed with <tt>-</tt>.  + Commits from the left side are prefixed with <code>&lt;</code> and those from  + the right with <code>&gt;</code>. If combined with <code>--boundary</code>, those  + commits are prefixed with <code>-</code>.   </p>   <div class="paragraph"><p>For example, if you have this topology:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> y---b---b branch B  +<pre><code> y---b---b branch B   / \ /   / .   / / \  - o---x---a---a branch A</tt></pre>  + o---x---a---a branch A</code></pre>   </div></div>   <div class="paragraph"><p>you would get an output like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt> $ git rev-list --left-right --boundary --pretty=oneline A...B  +<pre><code> $ git rev-list --left-right --boundary --pretty=oneline A...B     &gt;bbbbbbb... 3rd on b   &gt;bbbbbbb... 2nd on b   &lt;aaaaaaa... 3rd on a   &lt;aaaaaaa... 2nd on a   -yyyyyyy... 1st on b  - -xxxxxxx... 1st on a</tt></pre>  + -xxxxxxx... 1st on a</code></pre>   </div></div>   </dd>   <dt class="hdlist1">  @@ -2090,8 +2108,8 @@  to be drawn properly.   </p>   <div class="paragraph"><p>This enables parent rewriting, see <em>History Simplification</em> below.</p></div>  -<div class="paragraph"><p>This implies the <tt>--topo-order</tt> option by default, but the  -<tt>--date-order</tt> option may also be specified.</p></div>  +<div class="paragraph"><p>This implies the <code>--topo-order</code> option by default, but the  +<code>--date-order</code> option may also be specified.</p></div>   </dd>   <dt class="hdlist1">   --show-linear-break[=&lt;barrier&gt;]  @@ -2101,7 +2119,7 @@  When --graph is not used, all history branches are flattened   which can make it hard to see that the two consecutive commits   do not belong to a linear branch. This option puts a barrier  - in between them in that case. If <tt>&lt;barrier&gt;</tt> is specified, it  + in between them in that case. If <code>&lt;barrier&gt;</code> is specified, it   is the string that will be shown instead of the default one.   </p>   </dd>  @@ -2112,9 +2130,9 @@  <p>   Print a number stating how many commits would have been   listed, and suppress all other output. When used together  - with <tt>--left-right</tt>, instead print the counts for left and  + with <code>--left-right</code>, instead print the counts for left and   right commits, separated by a tab. When used together with  - <tt>--cherry-mark</tt>, omit patch equivalent commits from these  + <code>--cherry-mark</code>, omit patch equivalent commits from these   counts and print the count for equivalent commits separated   by a tab.   </p>  @@ -2148,7 +2166,7 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;sha1&gt; &lt;title line&gt;</tt></pre>  +<pre><code>&lt;sha1&gt; &lt;title line&gt;</code></pre>   </div></div>   <div class="paragraph"><p>This is designed to be as compact as possible.</p></div>   </li>  @@ -2158,12 +2176,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  -Author: &lt;author&gt;</tt></pre>  +<pre><code>commit &lt;sha1&gt;  +Author: &lt;author&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   </li>   <li>  @@ -2172,17 +2190,17 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  +<pre><code>commit &lt;sha1&gt;   Author: &lt;author&gt;  -Date: &lt;author date&gt;</tt></pre>  +Date: &lt;author date&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -2191,17 +2209,17 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  +<pre><code>commit &lt;sha1&gt;   Author: &lt;author&gt;  -Commit: &lt;committer&gt;</tt></pre>  +Commit: &lt;committer&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -2210,19 +2228,19 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  +<pre><code>commit &lt;sha1&gt;   Author: &lt;author&gt;   AuthorDate: &lt;author date&gt;   Commit: &lt;committer&gt;  -CommitDate: &lt;committer date&gt;</tt></pre>  +CommitDate: &lt;committer date&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -2231,14 +2249,14 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>From &lt;sha1&gt; &lt;date&gt;  +<pre><code>From &lt;sha1&gt; &lt;date&gt;   From: &lt;author&gt;   Date: &lt;author date&gt;  -Subject: [PATCH] &lt;title line&gt;</tt></pre>  +Subject: [PATCH] &lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -2264,8 +2282,8 @@  would show something like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>The author of fe6e0ee was Junio C Hamano, 23 hours ago  -The title was &gt;&gt;t4119: test autocomputing -p&lt;n&gt; for traditional diff input.&lt;&lt;</tt></pre>  +<pre><code>The author of fe6e0ee was Junio C Hamano, 23 hours ago  +The title was &gt;&gt;t4119: test autocomputing -p&lt;n&gt; for traditional diff input.&lt;&lt;</code></pre>   </div></div>   <div class="paragraph"><p>The placeholders are:</p></div>   <div class="ulist"><ul>  @@ -2343,7 +2361,12 @@  </li>   <li>   <p>  -<em>%ai</em>: author date, ISO 8601 format  +<em>%ai</em>: author date, ISO 8601-like format  +</p>  +</li>  +<li>  +<p>  +<em>%aI</em>: author date, strict ISO 8601 format   </p>   </li>   <li>  @@ -2390,7 +2413,12 @@  </li>   <li>   <p>  -<em>%ci</em>: committer date, ISO 8601 format  +<em>%ci</em>: committer date, ISO 8601-like format  +</p>  +</li>  +<li>  +<p>  +<em>%cI</em>: committer date, strict ISO 8601 format   </p>   </li>   <li>  @@ -2451,12 +2479,12 @@  </li>   <li>   <p>  -<em>%gD</em>: reflog selector, e.g., <tt>refs/stash@{1}</tt>  +<em>%gD</em>: reflog selector, e.g., <code>refs/stash@{1}</code>   </p>   </li>   <li>   <p>  -<em>%gd</em>: shortened reflog selector, e.g., <tt>stash@{1}</tt>  +<em>%gd</em>: shortened reflog selector, e.g., <code>stash@{1}</code>   </p>   </li>   <li>  @@ -2509,10 +2537,10 @@  <li>   <p>   <em>%C(&#8230;)</em>: color specification, as described in color.branch.* config option;  - adding <tt>auto,</tt> at the beginning will emit color only when colors are  - enabled for log output (by <tt>color.diff</tt>, <tt>color.ui</tt>, or <tt>--color</tt>, and  - respecting the <tt>auto</tt> settings of the former if we are going to a  - terminal). <tt>auto</tt> alone (i.e. <tt>%C(auto)</tt>) will turn on auto coloring  + adding <code>auto,</code> at the beginning will emit color only when colors are  + enabled for log output (by <code>color.diff</code>, <code>color.ui</code>, or <code>--color</code>, and  + respecting the <code>auto</code> settings of the former if we are going to a  + terminal). <code>auto</code> alone (i.e. <code>%C(auto)</code>) will turn on auto coloring   on the next placeholders until the color is switched again.   </p>   </li>  @@ -2585,16 +2613,16 @@  <div class="title">Note</div>   </td>   <td class="content">Some placeholders may depend on other options given to the  -revision traversal engine. For example, the <tt>%g*</tt> reflog options will  +revision traversal engine. For example, the <code>%g*</code> reflog options will   insert an empty string unless we are traversing reflog entries (e.g., by  -<tt>git log -g</tt>). The <tt>%d</tt> placeholder will use the "short" decoration  -format if <tt>--decorate</tt> was not already provided on the command line.</td>  +<code>git log -g</code>). The <code>%d</code> placeholder will use the "short" decoration  +format if <code>--decorate</code> was not already provided on the command line.</td>   </tr></table>   </div>  -<div class="paragraph"><p>If you add a <tt>+</tt> (plus sign) after <em>%</em> of a placeholder, a line-feed  +<div class="paragraph"><p>If you add a <code>+</code> (plus sign) after <em>%</em> of a placeholder, a line-feed   is inserted immediately before the expansion if and only if the   placeholder expands to a non-empty string.</p></div>  -<div class="paragraph"><p>If you add a <tt>-</tt> (minus sign) after <em>%</em> of a placeholder, line-feeds that  +<div class="paragraph"><p>If you add a <code>-</code> (minus sign) after <em>%</em> of a placeholder, line-feeds that   immediately precede the expansion are deleted if and only if the   placeholder expands to an empty string.</p></div>   <div class="paragraph"><p>If you add a ` ` (space) after <em>%</em> of a placeholder, a space  @@ -2614,7 +2642,7 @@  For example:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git log -2 --pretty=format:%h 4da45bef \  +<pre><code>$ git log -2 --pretty=format:%h 4da45bef \   | perl -pe '$_ .= " -- NO NEWLINE\n" unless /\n/'   4da45be   7134973 -- NO NEWLINE  @@ -2622,15 +2650,15 @@  $ git log -2 --pretty=tformat:%h 4da45bef \   | perl -pe '$_ .= " -- NO NEWLINE\n" unless /\n/'   4da45be  -7134973</tt></pre>  +7134973</code></pre>   </div></div>  -<div class="paragraph"><p>In addition, any unrecognized string that has a <tt>%</tt> in it is interpreted  -as if it has <tt>tformat:</tt> in front of it. For example, these two are  +<div class="paragraph"><p>In addition, any unrecognized string that has a <code>%</code> in it is interpreted  +as if it has <code>tformat:</code> in front of it. For example, these two are   equivalent:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git log -2 --pretty=tformat:%h 4da45bef  -$ git log -2 --pretty=%h 4da45bef</tt></pre>  +<pre><code>$ git log -2 --pretty=tformat:%h 4da45bef  +$ git log -2 --pretty=%h 4da45bef</code></pre>   </div></div>   </li>   </ul></div>  @@ -2646,7 +2674,7 @@  <div id="footnotes"><hr /></div>   <div id="footer">   <div id="footer-text">  -Last updated 2014-02-27 15:06:29 PST  +Last updated 2014-09-19 15:32:09 PDT   </div>   </div>   </body>  
diff --git a/git-rev-list.txt b/git-rev-list.txt index 7a1585d..fd7f8b5 100644 --- a/git-rev-list.txt +++ b/git-rev-list.txt 
@@ -45,7 +45,7 @@  [ \--regexp-ignore-case | -i ]  [ \--extended-regexp | -E ]  [ \--fixed-strings | -F ] - [ \--date=(local|relative|default|iso|rfc|short) ] + [ \--date=(local|relative|default|iso|iso-strict|rfc|short) ]  [ [\--objects | \--objects-edge] [ \--unpacked ] ]  [ \--pretty | \--header ]  [ \--bisect ] 
diff --git a/git-send-pack.html b/git-send-pack.html index ddd7e3c..994983b 100644 --- a/git-send-pack.html +++ b/git-send-pack.html 
@@ -3,7 +3,7 @@  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   <head>   <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />  -<meta name="generator" content="AsciiDoc 8.6.6" />  +<meta name="generator" content="AsciiDoc 8.6.9" />   <title>git-send-pack(1)</title>   <style type="text/css">   /* Shared CSS for AsciiDoc xhtml11 and html5 backends */  @@ -87,10 +87,16 @@  ul > li { color: #aaa; }   ul > li > * { color: black; }    -pre {  +.monospaced, code, pre {  + font-family: "Courier New", Courier, monospace;  + font-size: inherit;  + color: navy;   padding: 0;   margin: 0;   }  +pre {  + white-space: pre-wrap;  +}     #author {   color: #527bbd;  @@ -219,7 +225,7 @@  }     div.imageblock div.content { padding-left: 0; }  -span.image img { border-style: none; }  +span.image img { border-style: none; vertical-align: text-bottom; }   a.image:visited { color: white; }     dl {  @@ -349,7 +355,7 @@  margin-bottom: 0.1em;   }    -div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {  +div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {   margin-top: 0;   margin-bottom: 0;   }  @@ -407,18 +413,14 @@  span.overline { text-decoration: overline; }   span.line-through { text-decoration: line-through; }    +div.unbreakable { page-break-inside: avoid; }  +     /*   * xhtml11 specific   *   * */    -tt {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   div.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -452,12 +454,6 @@  *   * */    -.monospaced {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   table.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -537,6 +533,8 @@  @media print {   body.manpage div#toc { display: none; }   }  +  +   </style>   <script type="text/javascript">   /*<![CDATA[*/  @@ -581,7 +579,7 @@    function tocEntries(el, toclevels) {   var result = new Array;  - var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');  + var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');   // Function that scans the DOM tree for header elements (the DOM2   // nodeIterator API would be a better technique but not supported by all   // browsers).  @@ -610,7 +608,7 @@  var i;   for (i = 0; i < toc.childNodes.length; i++) {   var entry = toc.childNodes[i];  - if (entry.nodeName == 'div'  + if (entry.nodeName.toLowerCase() == 'div'   && entry.getAttribute("class")   && entry.getAttribute("class").match(/^toclevel/))   tocEntriesToRemove.push(entry);  @@ -656,7 +654,7 @@  var entriesToRemove = [];   for (i = 0; i < noteholder.childNodes.length; i++) {   var entry = noteholder.childNodes[i];  - if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")  + if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")   entriesToRemove.push(entry);   }   for (i = 0; i < entriesToRemove.length; i++) {  @@ -797,6 +795,20 @@  </p>   </dd>   <dt class="hdlist1">  +--stdin  +</dt>  +<dd>  +<p>  + Take the list of refs from stdin, one per line. If there  + are refs specified on the command line in addition to this  + option, then the refs from stdin are processed after those  + on the command line.  +</p>  +<div class="paragraph"><p>If <em>--stateless-rpc</em> is specified together with this option then  +the list of refs must be in packet format (pkt-line). Each ref must  +be in a separate packet, and the list must end with a flush packet.</p></div>  +</dd>  +<dt class="hdlist1">   --dry-run   </dt>   <dd>  @@ -872,7 +884,8 @@  this flag.</p></div>   <div class="paragraph"><p>Without <em>--all</em> and without any <em>&lt;ref&gt;</em>, the heads that exist   both on the local side and on the remote side are updated.</p></div>  -<div class="paragraph"><p>When one or more <em>&lt;ref&gt;</em> are specified explicitly, it can be either a  +<div class="paragraph"><p>When one or more <em>&lt;ref&gt;</em> are specified explicitly (whether on the  +command line or via <code>--stdin</code>), it can be either a   single pattern, or a pair of such pattern separated by a colon   ":" (this means that a ref name cannot have a colon in it). A   single pattern <em>&lt;name&gt;</em> is just a shorthand for <em>&lt;name&gt;:&lt;name&gt;</em>.</p></div>  @@ -936,7 +949,7 @@  <div id="footnotes"><hr /></div>   <div id="footer">   <div id="footer-text">  -Last updated 2013-08-20 08:40:27 PDT  +Last updated 2014-09-19 15:32:09 PDT   </div>   </div>   </body>  
diff --git a/git-send-pack.txt b/git-send-pack.txt index dc3a568..2a0de42 100644 --- a/git-send-pack.txt +++ b/git-send-pack.txt 
@@ -35,6 +35,16 @@ 	Instead of explicitly specifying which refs to update, 	update all heads that locally exist.   +--stdin:: +	Take the list of refs from stdin, one per line. If there +	are refs specified on the command line in addition to this +	option, then the refs from stdin are processed after those +	on the command line. ++ +If '--stateless-rpc' is specified together with this option then +the list of refs must be in packet format (pkt-line). Each ref must +be in a separate packet, and the list must end with a flush packet. +  --dry-run:: 	Do everything except actually send the updates.   @@ -77,7 +87,8 @@  Without '--all' and without any '<ref>', the heads that exist  both on the local side and on the remote side are updated.   -When one or more '<ref>' are specified explicitly, it can be either a +When one or more '<ref>' are specified explicitly (whether on the +command line or via `--stdin`), it can be either a  single pattern, or a pair of such pattern separated by a colon  ":" (this means that a ref name cannot have a colon in it). A  single pattern '<name>' is just a shorthand for '<name>:<name>'. 
diff --git a/git-show.html b/git-show.html index 8aac98e..52affe8 100644 --- a/git-show.html +++ b/git-show.html 
@@ -3,7 +3,7 @@  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   <head>   <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />  -<meta name="generator" content="AsciiDoc 8.6.6" />  +<meta name="generator" content="AsciiDoc 8.6.9" />   <title>git-show(1)</title>   <style type="text/css">   /* Shared CSS for AsciiDoc xhtml11 and html5 backends */  @@ -87,10 +87,16 @@  ul > li { color: #aaa; }   ul > li > * { color: black; }    -pre {  +.monospaced, code, pre {  + font-family: "Courier New", Courier, monospace;  + font-size: inherit;  + color: navy;   padding: 0;   margin: 0;   }  +pre {  + white-space: pre-wrap;  +}     #author {   color: #527bbd;  @@ -219,7 +225,7 @@  }     div.imageblock div.content { padding-left: 0; }  -span.image img { border-style: none; }  +span.image img { border-style: none; vertical-align: text-bottom; }   a.image:visited { color: white; }     dl {  @@ -349,7 +355,7 @@  margin-bottom: 0.1em;   }    -div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {  +div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {   margin-top: 0;   margin-bottom: 0;   }  @@ -407,18 +413,14 @@  span.overline { text-decoration: overline; }   span.line-through { text-decoration: line-through; }    +div.unbreakable { page-break-inside: avoid; }  +     /*   * xhtml11 specific   *   * */    -tt {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   div.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -452,12 +454,6 @@  *   * */    -.monospaced {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   table.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -537,6 +533,8 @@  @media print {   body.manpage div#toc { display: none; }   }  +  +   </style>   <script type="text/javascript">   /*<![CDATA[*/  @@ -581,7 +579,7 @@    function tocEntries(el, toclevels) {   var result = new Array;  - var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');  + var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');   // Function that scans the DOM tree for header elements (the DOM2   // nodeIterator API would be a better technique but not supported by all   // browsers).  @@ -610,7 +608,7 @@  var i;   for (i = 0; i < toc.childNodes.length; i++) {   var entry = toc.childNodes[i];  - if (entry.nodeName == 'div'  + if (entry.nodeName.toLowerCase() == 'div'   && entry.getAttribute("class")   && entry.getAttribute("class").match(/^toclevel/))   tocEntriesToRemove.push(entry);  @@ -656,7 +654,7 @@  var entriesToRemove = [];   for (i = 0; i < noteholder.childNodes.length; i++) {   var entry = noteholder.childNodes[i];  - if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")  + if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")   entriesToRemove.push(entry);   }   for (i = 0; i < entriesToRemove.length; i++) {  @@ -821,7 +819,7 @@  <dd>   <p>   Show the full 40-byte hexadecimal commit object name. This negates  - <tt>--abbrev-commit</tt> and those options which imply it such as  + <code>--abbrev-commit</code> and those options which imply it such as   "--oneline". It also overrides the <em>log.abbrevCommit</em> variable.   </p>   </dd>  @@ -853,15 +851,15 @@  <p>   Show the notes (see <a href="git-notes.html">git-notes(1)</a>) that annotate the   commit, when showing the commit log message. This is the default  - for <tt>git log</tt>, <tt>git show</tt> and <tt>git whatchanged</tt> commands when  - there is no <tt>--pretty</tt>, <tt>--format</tt>, or <tt>--oneline</tt> option given  + for <code>git log</code>, <code>git show</code> and <code>git whatchanged</code> commands when  + there is no <code>--pretty</code>, <code>--format</code>, or <code>--oneline</code> option given   on the command line.   </p>   <div class="paragraph"><p>By default, the notes shown are from the notes refs listed in the   <em>core.notesRef</em> and <em>notes.displayRef</em> variables (or corresponding   environment overrides). See <a href="git-config.html">git-config(1)</a> for more details.</p></div>   <div class="paragraph"><p>With an optional <em>&lt;ref&gt;</em> argument, show this notes ref instead of the  -default notes ref(s). The ref is taken to be in <tt>refs/notes/</tt> if it  +default notes ref(s). The ref is taken to be in <code>refs/notes/</code> if it   is not qualified.</p></div>   <div class="paragraph"><p>Multiple --notes options can be combined to control which notes are   being displayed. Examples: "--notes=foo" will show only notes from  @@ -873,7 +871,7 @@  </dt>   <dd>   <p>  - Do not show notes. This negates the above <tt>--notes</tt> option, by  + Do not show notes. This negates the above <code>--notes</code> option, by   resetting the list of notes refs from which notes are shown.   Options are parsed in the order given on the command line, so e.g.   "--notes --notes=foo --no-notes --notes=bar" will only show notes  @@ -898,7 +896,7 @@  <dd>   <p>   Check the validity of a signed commit object by passing the signature  - to <tt>gpg --verify</tt> and show the output.  + to <code>gpg --verify</code> and show the output.   </p>   </dd>   </dl></div>  @@ -929,7 +927,7 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;sha1&gt; &lt;title line&gt;</tt></pre>  +<pre><code>&lt;sha1&gt; &lt;title line&gt;</code></pre>   </div></div>   <div class="paragraph"><p>This is designed to be as compact as possible.</p></div>   </li>  @@ -939,12 +937,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  -Author: &lt;author&gt;</tt></pre>  +<pre><code>commit &lt;sha1&gt;  +Author: &lt;author&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   </li>   <li>  @@ -953,17 +951,17 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  +<pre><code>commit &lt;sha1&gt;   Author: &lt;author&gt;  -Date: &lt;author date&gt;</tt></pre>  +Date: &lt;author date&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -972,17 +970,17 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  +<pre><code>commit &lt;sha1&gt;   Author: &lt;author&gt;  -Commit: &lt;committer&gt;</tt></pre>  +Commit: &lt;committer&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -991,19 +989,19 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>commit &lt;sha1&gt;  +<pre><code>commit &lt;sha1&gt;   Author: &lt;author&gt;   AuthorDate: &lt;author date&gt;   Commit: &lt;committer&gt;  -CommitDate: &lt;committer date&gt;</tt></pre>  +CommitDate: &lt;committer date&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;title line&gt;</tt></pre>  +<pre><code>&lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -1012,14 +1010,14 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>From &lt;sha1&gt; &lt;date&gt;  +<pre><code>From &lt;sha1&gt; &lt;date&gt;   From: &lt;author&gt;   Date: &lt;author date&gt;  -Subject: [PATCH] &lt;title line&gt;</tt></pre>  +Subject: [PATCH] &lt;title line&gt;</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  -<pre><tt>&lt;full commit message&gt;</tt></pre>  +<pre><code>&lt;full commit message&gt;</code></pre>   </div></div>   </li>   <li>  @@ -1045,8 +1043,8 @@  would show something like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>The author of fe6e0ee was Junio C Hamano, 23 hours ago  -The title was &gt;&gt;t4119: test autocomputing -p&lt;n&gt; for traditional diff input.&lt;&lt;</tt></pre>  +<pre><code>The author of fe6e0ee was Junio C Hamano, 23 hours ago  +The title was &gt;&gt;t4119: test autocomputing -p&lt;n&gt; for traditional diff input.&lt;&lt;</code></pre>   </div></div>   <div class="paragraph"><p>The placeholders are:</p></div>   <div class="ulist"><ul>  @@ -1124,7 +1122,12 @@  </li>   <li>   <p>  -<em>%ai</em>: author date, ISO 8601 format  +<em>%ai</em>: author date, ISO 8601-like format  +</p>  +</li>  +<li>  +<p>  +<em>%aI</em>: author date, strict ISO 8601 format   </p>   </li>   <li>  @@ -1171,7 +1174,12 @@  </li>   <li>   <p>  -<em>%ci</em>: committer date, ISO 8601 format  +<em>%ci</em>: committer date, ISO 8601-like format  +</p>  +</li>  +<li>  +<p>  +<em>%cI</em>: committer date, strict ISO 8601 format   </p>   </li>   <li>  @@ -1232,12 +1240,12 @@  </li>   <li>   <p>  -<em>%gD</em>: reflog selector, e.g., <tt>refs/stash@{1}</tt>  +<em>%gD</em>: reflog selector, e.g., <code>refs/stash@{1}</code>   </p>   </li>   <li>   <p>  -<em>%gd</em>: shortened reflog selector, e.g., <tt>stash@{1}</tt>  +<em>%gd</em>: shortened reflog selector, e.g., <code>stash@{1}</code>   </p>   </li>   <li>  @@ -1290,10 +1298,10 @@  <li>   <p>   <em>%C(&#8230;)</em>: color specification, as described in color.branch.* config option;  - adding <tt>auto,</tt> at the beginning will emit color only when colors are  - enabled for log output (by <tt>color.diff</tt>, <tt>color.ui</tt>, or <tt>--color</tt>, and  - respecting the <tt>auto</tt> settings of the former if we are going to a  - terminal). <tt>auto</tt> alone (i.e. <tt>%C(auto)</tt>) will turn on auto coloring  + adding <code>auto,</code> at the beginning will emit color only when colors are  + enabled for log output (by <code>color.diff</code>, <code>color.ui</code>, or <code>--color</code>, and  + respecting the <code>auto</code> settings of the former if we are going to a  + terminal). <code>auto</code> alone (i.e. <code>%C(auto)</code>) will turn on auto coloring   on the next placeholders until the color is switched again.   </p>   </li>  @@ -1366,16 +1374,16 @@  <div class="title">Note</div>   </td>   <td class="content">Some placeholders may depend on other options given to the  -revision traversal engine. For example, the <tt>%g*</tt> reflog options will  +revision traversal engine. For example, the <code>%g*</code> reflog options will   insert an empty string unless we are traversing reflog entries (e.g., by  -<tt>git log -g</tt>). The <tt>%d</tt> placeholder will use the "short" decoration  -format if <tt>--decorate</tt> was not already provided on the command line.</td>  +<code>git log -g</code>). The <code>%d</code> placeholder will use the "short" decoration  +format if <code>--decorate</code> was not already provided on the command line.</td>   </tr></table>   </div>  -<div class="paragraph"><p>If you add a <tt>+</tt> (plus sign) after <em>%</em> of a placeholder, a line-feed  +<div class="paragraph"><p>If you add a <code>+</code> (plus sign) after <em>%</em> of a placeholder, a line-feed   is inserted immediately before the expansion if and only if the   placeholder expands to a non-empty string.</p></div>  -<div class="paragraph"><p>If you add a <tt>-</tt> (minus sign) after <em>%</em> of a placeholder, line-feeds that  +<div class="paragraph"><p>If you add a <code>-</code> (minus sign) after <em>%</em> of a placeholder, line-feeds that   immediately precede the expansion are deleted if and only if the   placeholder expands to an empty string.</p></div>   <div class="paragraph"><p>If you add a ` ` (space) after <em>%</em> of a placeholder, a space  @@ -1395,7 +1403,7 @@  For example:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git log -2 --pretty=format:%h 4da45bef \  +<pre><code>$ git log -2 --pretty=format:%h 4da45bef \   | perl -pe '$_ .= " -- NO NEWLINE\n" unless /\n/'   4da45be   7134973 -- NO NEWLINE  @@ -1403,15 +1411,15 @@  $ git log -2 --pretty=tformat:%h 4da45bef \   | perl -pe '$_ .= " -- NO NEWLINE\n" unless /\n/'   4da45be  -7134973</tt></pre>  +7134973</code></pre>   </div></div>  -<div class="paragraph"><p>In addition, any unrecognized string that has a <tt>%</tt> in it is interpreted  -as if it has <tt>tformat:</tt> in front of it. For example, these two are  +<div class="paragraph"><p>In addition, any unrecognized string that has a <code>%</code> in it is interpreted  +as if it has <code>tformat:</code> in front of it. For example, these two are   equivalent:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git log -2 --pretty=tformat:%h 4da45bef  -$ git log -2 --pretty=%h 4da45bef</tt></pre>  +<pre><code>$ git log -2 --pretty=tformat:%h 4da45bef  +$ git log -2 --pretty=%h 4da45bef</code></pre>   </div></div>   </li>   </ul></div>  @@ -1444,8 +1452,8 @@  </dt>   <dd>   <p>  - Suppress diff output. Useful for commands like <tt>git show</tt> that  - show the patch by default, or to cancel the effect of <tt>--patch</tt>.  + Suppress diff output. Useful for commands like <code>git show</code> that  + show the patch by default, or to cancel the effect of <code>--patch</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1458,7 +1466,7 @@  <p>   Generate diffs with &lt;n&gt; lines of context instead of   the usual three.  - Implies <tt>-p</tt>.  + Implies <code>-p</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1475,7 +1483,7 @@  </dt>   <dd>   <p>  - Synonym for <tt>-p --raw</tt>.  + Synonym for <code>-p --raw</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1514,7 +1522,7 @@  <div class="content">   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>default</tt>, <tt>myers</tt>  +<code>default</code>, <code>myers</code>   </dt>   <dd>   <p>  @@ -1522,7 +1530,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>minimal</tt>  +<code>minimal</code>   </dt>   <dd>   <p>  @@ -1531,7 +1539,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>patience</tt>  +<code>patience</code>   </dt>   <dd>   <p>  @@ -1539,7 +1547,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>histogram</tt>  +<code>histogram</code>   </dt>   <dd>   <p>  @@ -1551,7 +1559,7 @@  </div></div>   <div class="paragraph"><p>For instance, if you configured diff.algorithm variable to a   non-default value and want to use the default one, then you  -have to use <tt>--diff-algorithm=default</tt> option.</p></div>  +have to use <code>--diff-algorithm=default</code> option.</p></div>   </dd>   <dt class="hdlist1">   --stat[=&lt;width&gt;[,&lt;name-width&gt;[,&lt;count&gt;]]]  @@ -1562,29 +1570,29 @@  will be used for the filename part, and the rest for the graph   part. Maximum width defaults to terminal width, or 80 columns   if not connected to a terminal, and can be overridden by  - <tt>&lt;width&gt;</tt>. The width of the filename part can be limited by  - giving another width <tt>&lt;name-width&gt;</tt> after a comma. The width  + <code>&lt;width&gt;</code>. The width of the filename part can be limited by  + giving another width <code>&lt;name-width&gt;</code> after a comma. The width   of the graph part can be limited by using  - <tt>--stat-graph-width=&lt;width&gt;</tt> (affects all commands generating  - a stat graph) or by setting <tt>diff.statGraphWidth=&lt;width&gt;</tt>  - (does not affect <tt>git format-patch</tt>).  - By giving a third parameter <tt>&lt;count&gt;</tt>, you can limit the  - output to the first <tt>&lt;count&gt;</tt> lines, followed by <tt>...</tt> if  + <code>--stat-graph-width=&lt;width&gt;</code> (affects all commands generating  + a stat graph) or by setting <code>diff.statGraphWidth=&lt;width&gt;</code>  + (does not affect <code>git format-patch</code>).  + By giving a third parameter <code>&lt;count&gt;</code>, you can limit the  + output to the first <code>&lt;count&gt;</code> lines, followed by <code>...</code> if   there are more.   </p>  -<div class="paragraph"><p>These parameters can also be set individually with <tt>--stat-width=&lt;width&gt;</tt>,  -<tt>--stat-name-width=&lt;name-width&gt;</tt> and <tt>--stat-count=&lt;count&gt;</tt>.</p></div>  +<div class="paragraph"><p>These parameters can also be set individually with <code>--stat-width=&lt;width&gt;</code>,  +<code>--stat-name-width=&lt;name-width&gt;</code> and <code>--stat-count=&lt;count&gt;</code>.</p></div>   </dd>   <dt class="hdlist1">   --numstat   </dt>   <dd>   <p>  - Similar to <tt>--stat</tt>, but shows number of added and  + Similar to <code>--stat</code>, but shows number of added and   deleted lines in decimal notation and pathname without   abbreviation, to make it more machine friendly. For  - binary files, outputs two <tt>-</tt> instead of saying  - <tt>0 0</tt>.  + binary files, outputs two <code>-</code> instead of saying  + <code>0 0</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1592,7 +1600,7 @@  </dt>   <dd>   <p>  - Output only the last line of the <tt>--stat</tt> format containing total  + Output only the last line of the <code>--stat</code> format containing total   number of modified files, as well as number of added and deleted   lines.   </p>  @@ -1603,9 +1611,9 @@  <dd>   <p>   Output the distribution of relative amount of changes for each  - sub-directory. The behavior of <tt>--dirstat</tt> can be customized by  + sub-directory. The behavior of <code>--dirstat</code> can be customized by   passing it a comma separated list of parameters.  - The defaults are controlled by the <tt>diff.dirstat</tt> configuration  + The defaults are controlled by the <code>diff.dirstat</code> configuration   variable (see <a href="git-config.html">git-config(1)</a>).   The following parameters are available:   </p>  @@ -1613,7 +1621,7 @@  <div class="content">   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>changes</tt>  +<code>changes</code>   </dt>   <dd>   <p>  @@ -1625,39 +1633,39 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>lines</tt>  +<code>lines</code>   </dt>   <dd>   <p>   Compute the dirstat numbers by doing the regular line-based diff   analysis, and summing the removed/added line counts. (For binary   files, count 64-byte chunks instead, since binary files have no  - natural concept of lines). This is a more expensive <tt>--dirstat</tt>  - behavior than the <tt>changes</tt> behavior, but it does count rearranged  + natural concept of lines). This is a more expensive <code>--dirstat</code>  + behavior than the <code>changes</code> behavior, but it does count rearranged   lines within a file as much as other changes. The resulting output  - is consistent with what you get from the other <tt>--*stat</tt> options.  + is consistent with what you get from the other <code>--*stat</code> options.   </p>   </dd>   <dt class="hdlist1">  -<tt>files</tt>  +<code>files</code>   </dt>   <dd>   <p>   Compute the dirstat numbers by counting the number of files changed.   Each changed file counts equally in the dirstat analysis. This is  - the computationally cheapest <tt>--dirstat</tt> behavior, since it does  + the computationally cheapest <code>--dirstat</code> behavior, since it does   not have to look at the file contents at all.   </p>   </dd>   <dt class="hdlist1">  -<tt>cumulative</tt>  +<code>cumulative</code>   </dt>   <dd>   <p>   Count changes in a child directory for the parent directory as well.  - Note that when using <tt>cumulative</tt>, the sum of the percentages  + Note that when using <code>cumulative</code>, the sum of the percentages   reported may exceed 100%. The default (non-cumulative) behavior can  - be specified with the <tt>noncumulative</tt> parameter.  + be specified with the <code>noncumulative</code> parameter.   </p>   </dd>   <dt class="hdlist1">  @@ -1675,7 +1683,7 @@  <div class="paragraph"><p>Example: The following will count changed files, while ignoring   directories with less than 10% of the total amount of changed files,   and accumulating child directory counts in the parent directories:  -<tt>--dirstat=files,10,cumulative</tt>.</p></div>  +<code>--dirstat=files,10,cumulative</code>.</p></div>   </dd>   <dt class="hdlist1">   --summary  @@ -1691,7 +1699,7 @@  </dt>   <dd>   <p>  - Synonym for <tt>-p --stat</tt>.  + Synonym for <code>-p --stat</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1701,10 +1709,10 @@  <p>   Separate the commits with NULs instead of with new newlines.   </p>  -<div class="paragraph"><p>Also, when <tt>--raw</tt> or <tt>--numstat</tt> has been given, do not munge  +<div class="paragraph"><p>Also, when <code>--raw</code> or <code>--numstat</code> has been given, do not munge   pathnames and use NULs as output field terminators.</p></div>   <div class="paragraph"><p>Without this option, each pathname output will have TAB, LF, double quotes,  -and backslash characters replaced with <tt>\t</tt>, <tt>\n</tt>, <tt>\"</tt>, and <tt>\\</tt>,  +and backslash characters replaced with <code>\t</code>, <code>\n</code>, <code>\"</code>, and <code>\\</code>,   respectively, and the pathname will be enclosed in double quotes if   any of those replacements occurred.</p></div>   </dd>  @@ -1722,7 +1730,7 @@  <dd>   <p>   Show only names and status of changed files. See the description  - of the <tt>--diff-filter</tt> option on what the status letters mean.  + of the <code>--diff-filter</code> option on what the status letters mean.   </p>   </dd>   <dt class="hdlist1">  @@ -1730,13 +1738,13 @@  </dt>   <dd>   <p>  - Specify how differences in submodules are shown. When <tt>--submodule</tt>  - or <tt>--submodule=log</tt> is given, the <em>log</em> format is used. This format lists  - the commits in the range like <a href="git-submodule.html">git-submodule(1)</a> <tt>summary</tt> does.  - Omitting the <tt>--submodule</tt> option or specifying <tt>--submodule=short</tt>,  + Specify how differences in submodules are shown. When <code>--submodule</code>  + or <code>--submodule=log</code> is given, the <em>log</em> format is used. This format lists  + the commits in the range like <a href="git-submodule.html">git-submodule(1)</a> <code>summary</code> does.  + Omitting the <code>--submodule</code> option or specifying <code>--submodule=short</code>,   uses the <em>short</em> format. This format just shows the names of the commits   at the beginning and end of the range. Can be tweaked via the  - <tt>diff.submodule</tt> configuration variable.  + <code>diff.submodule</code> configuration variable.   </p>   </dd>   <dt class="hdlist1">  @@ -1745,8 +1753,8 @@  <dd>   <p>   Show colored diff.  - <tt>--color</tt> (i.e. without <em>=&lt;when&gt;</em>) is the same as <tt>--color=always</tt>.  - <em>&lt;when&gt;</em> can be one of <tt>always</tt>, <tt>never</tt>, or <tt>auto</tt>.  + <code>--color</code> (i.e. without <em>=&lt;when&gt;</em>) is the same as <code>--color=always</code>.  + <em>&lt;when&gt;</em> can be one of <code>always</code>, <code>never</code>, or <code>auto</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1755,7 +1763,7 @@  <dd>   <p>   Turn off colored diff.  - It is the same as <tt>--color=never</tt>.  + It is the same as <code>--color=never</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1765,7 +1773,7 @@  <p>   Show a word diff, using the &lt;mode&gt; to delimit changed words.   By default, words are delimited by whitespace; see  - <tt>--word-diff-regex</tt> below. The &lt;mode&gt; defaults to <em>plain</em>, and  + <code>--word-diff-regex</code> below. The &lt;mode&gt; defaults to <em>plain</em>, and   must be one of:   </p>   <div class="openblock">  @@ -1776,7 +1784,7 @@  </dt>   <dd>   <p>  - Highlight changed words using only colors. Implies <tt>--color</tt>.  + Highlight changed words using only colors. Implies <code>--color</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1784,7 +1792,7 @@  </dt>   <dd>   <p>  - Show words as <tt>[-removed-]</tt> and <tt>{+added+}</tt>. Makes no  + Show words as <code>[-removed-]</code> and <code>{+added+}</code>. Makes no   attempts to escape the delimiters if they appear in the input,   so the output may be ambiguous.   </p>  @@ -1796,10 +1804,10 @@  <p>   Use a special line-based format intended for script   consumption. Added/removed/unchanged runs are printed in the  - usual unified diff format, starting with a <tt>+</tt>/<tt>-</tt>/` `  + usual unified diff format, starting with a <code>+</code>/<code>-</code>/` `   character at the beginning of the line and extending to the   end of the line. Newlines in the input are represented by a  - tilde <tt>~</tt> on a line of its own.  + tilde <code>~</code> on a line of its own.   </p>   </dd>   <dt class="hdlist1">  @@ -1822,12 +1830,12 @@  <p>   Use &lt;regex&gt; to decide what a word is, instead of considering   runs of non-whitespace to be a word. Also implies  - <tt>--word-diff</tt> unless it was already enabled.  + <code>--word-diff</code> unless it was already enabled.   </p>   <div class="paragraph"><p>Every non-overlapping match of the   &lt;regex&gt; is considered a word. Anything between these matches is   considered whitespace and ignored(!) for the purposes of finding  -differences. You may want to append <tt>|[^[:space:]]</tt> to your regular  +differences. You may want to append <code>|[^[:space:]]</code> to your regular   expression to make sure that it matches all non-whitespace characters.   A match that contains a newline is silently truncated(!) at the   newline.</p></div>  @@ -1841,8 +1849,8 @@  </dt>   <dd>   <p>  - Equivalent to <tt>--word-diff=color</tt> plus (if a regex was  - specified) <tt>--word-diff-regex=&lt;regex&gt;</tt>.  + Equivalent to <code>--word-diff=color</code> plus (if a regex was  + specified) <code>--word-diff-regex=&lt;regex&gt;</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1860,7 +1868,7 @@  <dd>   <p>   Warn if changes introduce whitespace errors. What are  - considered whitespace errors is controlled by <tt>core.whitespace</tt>  + considered whitespace errors is controlled by <code>core.whitespace</code>   configuration. By default, trailing whitespaces (including   lines that solely consist of whitespaces) and a space character   that is immediately followed by a tab character inside the  @@ -1884,8 +1892,8 @@  </dt>   <dd>   <p>  - In addition to <tt>--full-index</tt>, output a binary diff that  - can be applied with <tt>git-apply</tt>.  + In addition to <code>--full-index</code>, output a binary diff that  + can be applied with <code>git-apply</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1896,9 +1904,9 @@  Instead of showing the full 40-byte hexadecimal object   name in diff-raw format output and diff-tree header   lines, show only a partial prefix. This is  - independent of the <tt>--full-index</tt> option above, which controls  + independent of the <code>--full-index</code> option above, which controls   the diff-patch output format. Non default number of  - digits can be specified with <tt>--abbrev=&lt;n&gt;</tt>.  + digits can be specified with <code>--abbrev=&lt;n&gt;</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1916,15 +1924,15 @@  not as a series of deletion and insertion mixed together with a very   few lines that happen to match textually as the context, but as a   single deletion of everything old followed by a single insertion of  -everything new, and the number <tt>m</tt> controls this aspect of the -B  -option (defaults to 60%). <tt>-B/70%</tt> specifies that less than 30% of the  +everything new, and the number <code>m</code> controls this aspect of the -B  +option (defaults to 60%). <code>-B/70%</code> specifies that less than 30% of the   original should remain in the result for Git to consider it a total   rewrite (i.e. otherwise the resulting patch will be a series of   deletion and insertion mixed together with context lines).</p></div>   <div class="paragraph"><p>When used with -M, a totally-rewritten file is also considered as the   source of a rename (usually -M only considers a file that disappeared  -as the source of a rename), and the number <tt>n</tt> controls this aspect of  -the -B option (defaults to 50%). <tt>-B20%</tt> specifies that a change with  +as the source of a rename), and the number <code>n</code> controls this aspect of  +the -B option (defaults to 50%). <code>-B20%</code> specifies that a change with   addition and deletion compared to 20% or more of the file&#8217;s size are   eligible for being picked up as a possible source of a rename to   another file.</p></div>  @@ -1939,16 +1947,16 @@  <p>   If generating diffs, detect and report renames for each commit.   For following files across renames while traversing history, see  - <tt>--follow</tt>.  - If <tt>n</tt> is specified, it is a threshold on the similarity  + <code>--follow</code>.  + If <code>n</code> is specified, it is a threshold on the similarity   index (i.e. amount of addition/deletions compared to the  - file&#8217;s size). For example, <tt>-M90%</tt> means Git should consider a  + file&#8217;s size). For example, <code>-M90%</code> means Git should consider a   delete/add pair to be a rename if more than 90% of the file  - hasn&#8217;t changed. Without a <tt>%</tt> sign, the number is to be read as  - a fraction, with a decimal point before it. I.e., <tt>-M5</tt> becomes  - 0.5, and is thus the same as <tt>-M50%</tt>. Similarly, <tt>-M05</tt> is  - the same as <tt>-M5%</tt>. To limit detection to exact renames, use  - <tt>-M100%</tt>. The default similarity index is 50%.  + hasn&#8217;t changed. Without a <code>%</code> sign, the number is to be read as  + a fraction, with a decimal point before it. I.e., <code>-M5</code> becomes  + 0.5, and is thus the same as <code>-M50%</code>. Similarly, <code>-M05</code> is  + the same as <code>-M5%</code>. To limit detection to exact renames, use  + <code>-M100%</code>. The default similarity index is 50%.   </p>   </dd>   <dt class="hdlist1">  @@ -1959,8 +1967,8 @@  </dt>   <dd>   <p>  - Detect copies as well as renames. See also <tt>--find-copies-harder</tt>.  - If <tt>n</tt> is specified, it has the same meaning as for <tt>-M&lt;n&gt;</tt>.  + Detect copies as well as renames. See also <code>--find-copies-harder</code>.  + If <code>n</code> is specified, it has the same meaning as for <code>-M&lt;n&gt;</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -1968,13 +1976,13 @@  </dt>   <dd>   <p>  - For performance reasons, by default, <tt>-C</tt> option finds copies only  + For performance reasons, by default, <code>-C</code> option finds copies only   if the original file of the copy was modified in the same   changeset. This flag makes the command   inspect unmodified files as candidates for the source of   copy. This is a very expensive operation for large   projects, so use it with caution. Giving more than one  - <tt>-C</tt> option has the same effect.  + <code>-C</code> option has the same effect.   </p>   </dd>   <dt class="hdlist1">  @@ -1986,14 +1994,14 @@  <dd>   <p>   Omit the preimage for deletes, i.e. print only the header but not  - the diff between the preimage and <tt>/dev/null</tt>. The resulting patch  - is not meant to be applied with <tt>patch</tt> or <tt>git apply</tt>; this is  + the diff between the preimage and <code>/dev/null</code>. The resulting patch  + is not meant to be applied with <code>patch</code> or <code>git apply</code>; this is   solely for people who want to just concentrate on reviewing the   text after the change. In addition, the output obviously lack   enough information to apply such a patch in reverse, even manually,   hence the name of the option.   </p>  -<div class="paragraph"><p>When used together with <tt>-B</tt>, omit also the preimage in the deletion part  +<div class="paragraph"><p>When used together with <code>-B</code>, omit also the preimage in the deletion part   of a delete/create pair.</p></div>   </dd>   <dt class="hdlist1">  @@ -2001,7 +2009,7 @@  </dt>   <dd>   <p>  - The <tt>-M</tt> and <tt>-C</tt> options require O(n^2) processing time where n  + The <code>-M</code> and <code>-C</code> options require O(n^2) processing time where n   is the number of potential rename/copy targets. This   option prevents rename/copy detection from running if   the number of rename/copy targets exceeds the specified  @@ -2013,13 +2021,13 @@  </dt>   <dd>   <p>  - Select only files that are Added (<tt>A</tt>), Copied (<tt>C</tt>),  - Deleted (<tt>D</tt>), Modified (<tt>M</tt>), Renamed (<tt>R</tt>), have their  - type (i.e. regular file, symlink, submodule, &#8230;) changed (<tt>T</tt>),  - are Unmerged (<tt>U</tt>), are  - Unknown (<tt>X</tt>), or have had their pairing Broken (<tt>B</tt>).  + Select only files that are Added (<code>A</code>), Copied (<code>C</code>),  + Deleted (<code>D</code>), Modified (<code>M</code>), Renamed (<code>R</code>), have their  + type (i.e. regular file, symlink, submodule, &#8230;) changed (<code>T</code>),  + are Unmerged (<code>U</code>), are  + Unknown (<code>X</code>), or have had their pairing Broken (<code>B</code>).   Any combination of the filter characters (including none) can be used.  - When <tt>*</tt> (All-or-none) is added to the combination, all  + When <code>*</code> (All-or-none) is added to the combination, all   paths are selected if there is any file that matches   other criteria in the comparison; if there is no file   that matches other criteria, nothing is selected.  @@ -2037,7 +2045,7 @@  <div class="paragraph"><p>It is useful when you&#8217;re looking for an exact block of code (like a   struct), and want to know the history of that block since it first   came into being: use the feature iteratively to feed the interesting  -block in the preimage back into <tt>-S</tt>, and keep going until you get the  +block in the preimage back into <code>-S</code>, and keep going until you get the   very first version of the block.</p></div>   </dd>   <dt class="hdlist1">  @@ -2048,17 +2056,17 @@  Look for differences whose patch text contains added/removed   lines that match &lt;regex&gt;.   </p>  -<div class="paragraph"><p>To illustrate the difference between <tt>-S&lt;regex&gt; --pickaxe-regex</tt> and  -<tt>-G&lt;regex&gt;</tt>, consider a commit with the following diff in the same  +<div class="paragraph"><p>To illustrate the difference between <code>-S&lt;regex&gt; --pickaxe-regex</code> and  +<code>-G&lt;regex&gt;</code>, consider a commit with the following diff in the same   file:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>+ return !regexec(regexp, two-&gt;ptr, 1, &amp;regmatch, 0);  +<pre><code>+ return !regexec(regexp, two-&gt;ptr, 1, &amp;regmatch, 0);   ...  -- hit = !regexec(regexp, mf2.ptr, 1, &amp;regmatch, 0);</tt></pre>  +- hit = !regexec(regexp, mf2.ptr, 1, &amp;regmatch, 0);</code></pre>   </div></div>  -<div class="paragraph"><p>While <tt>git log -G"regexec\(regexp"</tt> will show this commit, <tt>git log  --S"regexec\(regexp" --pickaxe-regex</tt> will not (because the number of  +<div class="paragraph"><p>While <code>git log -G"regexec\(regexp"</code> will show this commit, <code>git log  +-S"regexec\(regexp" --pickaxe-regex</code> will not (because the number of   occurrences of that string did not change).</p></div>   <div class="paragraph"><p>See the <em>pickaxe</em> entry in <a href="gitdiffcore.html">gitdiffcore(7)</a> for more   information.</p></div>  @@ -2068,7 +2076,7 @@  </dt>   <dd>   <p>  - When <tt>-S</tt> or <tt>-G</tt> finds a change, show all the changes in that  + When <code>-S</code> or <code>-G</code> finds a change, show all the changes in that   changeset, not just the files that contain the change   in &lt;string&gt;.   </p>  @@ -2078,7 +2086,7 @@  </dt>   <dd>   <p>  - Treat the &lt;string&gt; given to <tt>-S</tt> as an extended POSIX regular  + Treat the &lt;string&gt; given to <code>-S</code> as an extended POSIX regular   expression to match.   </p>   </dd>  @@ -2089,9 +2097,9 @@  <p>   Output the patch in the order specified in the   &lt;orderfile&gt;, which has one shell glob pattern per line.  - This overrides the <tt>diff.orderfile</tt> configuration variable  - (see <a href="git-config.html">git-config(1)</a>). To cancel <tt>diff.orderfile</tt>,  - use <tt>-O/dev/null</tt>.  + This overrides the <code>diff.orderfile</code> configuration variable  + (see <a href="git-config.html">git-config(1)</a>). To cancel <code>diff.orderfile</code>,  + use <code>-O/dev/null</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -2290,12 +2298,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>diff --git a/file1 b/file2</tt></pre>  +<pre><code>diff --git a/file1 b/file2</code></pre>   </div></div>  -<div class="paragraph"><p>The <tt>a/</tt> and <tt>b/</tt> filenames are the same unless rename/copy is  +<div class="paragraph"><p>The <code>a/</code> and <code>b/</code> filenames are the same unless rename/copy is   involved. Especially, even for a creation or a deletion,  -<tt>/dev/null</tt> is <em>not</em> used in place of the <tt>a/</tt> or <tt>b/</tt> filenames.</p></div>  -<div class="paragraph"><p>When rename/copy is involved, <tt>file1</tt> and <tt>file2</tt> show the  +<code>/dev/null</code> is <em>not</em> used in place of the <code>a/</code> or <code>b/</code> filenames.</p></div>  +<div class="paragraph"><p>When rename/copy is involved, <code>file1</code> and <code>file2</code> show the   name of the source file of the rename/copy and the name of   the file that rename/copy produces, respectively.</p></div>   </li>  @@ -2305,7 +2313,7 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>old mode &lt;mode&gt;  +<pre><code>old mode &lt;mode&gt;   new mode &lt;mode&gt;   deleted file mode &lt;mode&gt;   new file mode &lt;mode&gt;  @@ -2315,11 +2323,11 @@  rename to &lt;path&gt;   similarity index &lt;number&gt;   dissimilarity index &lt;number&gt;  -index &lt;hash&gt;..&lt;hash&gt; &lt;mode&gt;</tt></pre>  +index &lt;hash&gt;..&lt;hash&gt; &lt;mode&gt;</code></pre>   </div></div>   <div class="paragraph"><p>File modes are printed as 6-digit octal numbers including the file type   and file permission bits.</p></div>  -<div class="paragraph"><p>Path names in extended headers do not include the <tt>a/</tt> and <tt>b/</tt> prefixes.</p></div>  +<div class="paragraph"><p>Path names in extended headers do not include the <code>a/</code> and <code>b/</code> prefixes.</p></div>   <div class="paragraph"><p>The similarity index is the percentage of unchanged lines, and   the dissimilarity index is the percentage of changed lines. It   is a rounded down integer, followed by a percent sign. The  @@ -2333,26 +2341,26 @@  <li>   <p>   TAB, LF, double quote and backslash characters in pathnames  - are represented as <tt>\t</tt>, <tt>\n</tt>, <tt>\"</tt> and <tt>\\</tt>, respectively.  + are represented as <code>\t</code>, <code>\n</code>, <code>\"</code> and <code>\\</code>, respectively.   If there is need for such substitution then the whole   pathname is put in double quotes.   </p>   </li>   <li>   <p>  -All the <tt>file1</tt> files in the output refer to files before the  - commit, and all the <tt>file2</tt> files refer to files after the commit.  +All the <code>file1</code> files in the output refer to files before the  + commit, and all the <code>file2</code> files refer to files after the commit.   It is incorrect to apply each change to each file sequentially. For   example, this patch will swap a and b:   </p>   <div class="literalblock">   <div class="content">  -<pre><tt>diff --git a/a b/b  +<pre><code>diff --git a/a b/b   rename from a   rename to b   diff --git a/b b/a   rename from b  -rename to a</tt></pre>  +rename to a</code></pre>   </div></div>   </li>   </ol></div>  @@ -2361,7 +2369,7 @@  <div class="sect1">   <h2 id="_combined_diff_format">combined diff format</h2>   <div class="sectionbody">  -<div class="paragraph"><p>Any diff-generating command can take the &#8216;-c` or <tt>--cc</tt> option to  +<div class="paragraph"><p>Any diff-generating command can take the &#8216;-c` or <code>--cc</code> option to   produce a <em>combined diff</em> when showing a merge. This is the default   format when showing merges with <a href="git-diff.html">git-diff(1)</a> or   <a href="git-show.html">git-show(1)</a>. Note also that you can give the `-m&#8217; option to any  @@ -2370,7 +2378,7 @@  <div class="paragraph"><p>A <em>combined diff</em> format looks like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>diff --combined describe.c  +<pre><code>diff --combined describe.c   index fabadb8,cc95eb0..4866510   --- a/describe.c   +++ b/describe.c  @@ -2396,7 +2404,7 @@  +   if (!initialized) {   initialized = 1;  - for_each_ref(get_name);</tt></pre>  + for_each_ref(get_name);</code></pre>   </div></div>   <div class="olist arabic"><ol class="arabic">   <li>  @@ -2406,12 +2414,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>diff --combined file</tt></pre>  +<pre><code>diff --combined file</code></pre>   </div></div>   <div class="paragraph"><p>or like this (when <em>--cc</em> option is used):</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>diff --cc file</tt></pre>  +<pre><code>diff --cc file</code></pre>   </div></div>   </li>   <li>  @@ -2421,12 +2429,12 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>index &lt;hash&gt;,&lt;hash&gt;..&lt;hash&gt;  +<pre><code>index &lt;hash&gt;,&lt;hash&gt;..&lt;hash&gt;   mode &lt;mode&gt;,&lt;mode&gt;..&lt;mode&gt;   new file mode &lt;mode&gt;  -deleted file mode &lt;mode&gt;,&lt;mode&gt;</tt></pre>  +deleted file mode &lt;mode&gt;,&lt;mode&gt;</code></pre>   </div></div>  -<div class="paragraph"><p>The <tt>mode &lt;mode&gt;,&lt;mode&gt;..&lt;mode&gt;</tt> line appears only if at least one of  +<div class="paragraph"><p>The <code>mode &lt;mode&gt;,&lt;mode&gt;..&lt;mode&gt;</code> line appears only if at least one of   the &lt;mode&gt; is different from the rest. Extended headers with   information about detected contents movement (renames and   copying detection) are designed to work with diff of two  @@ -2438,49 +2446,49 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>--- a/file  -+++ b/file</tt></pre>  +<pre><code>--- a/file  ++++ b/file</code></pre>   </div></div>   <div class="paragraph"><p>Similar to two-line header for traditional <em>unified</em> diff  -format, <tt>/dev/null</tt> is used to signal created or deleted  +format, <code>/dev/null</code> is used to signal created or deleted   files.</p></div>   </li>   <li>   <p>   Chunk header format is modified to prevent people from  - accidentally feeding it to <tt>patch -p1</tt>. Combined diff format  + accidentally feeding it to <code>patch -p1</code>. Combined diff format   was created for review of merge commit changes, and was not   meant for apply. The change is similar to the change in the   extended <em>index</em> header:   </p>   <div class="literalblock">   <div class="content">  -<pre><tt>@@@ &lt;from-file-range&gt; &lt;from-file-range&gt; &lt;to-file-range&gt; @@@</tt></pre>  +<pre><code>@@@ &lt;from-file-range&gt; &lt;from-file-range&gt; &lt;to-file-range&gt; @@@</code></pre>   </div></div>  -<div class="paragraph"><p>There are (number of parents + 1) <tt>@</tt> characters in the chunk  +<div class="paragraph"><p>There are (number of parents + 1) <code>@</code> characters in the chunk   header for combined diff format.</p></div>   </li>   </ol></div>   <div class="paragraph"><p>Unlike the traditional <em>unified</em> diff format, which shows two  -files A and B with a single column that has <tt>-</tt> (minus&#8201;&#8212;&#8201;appears in A but removed in B), <tt>+</tt> (plus&#8201;&#8212;&#8201;missing in A but  -added to B), or <tt>" "</tt> (space&#8201;&#8212;&#8201;unchanged) prefix, this format  +files A and B with a single column that has <code>-</code> (minus&#8201;&#8212;&#8201;appears in A but removed in B), <code>+</code> (plus&#8201;&#8212;&#8201;missing in A but  +added to B), or <code>" "</code> (space&#8201;&#8212;&#8201;unchanged) prefix, this format   compares two or more files file1, file2,&#8230; with one file X, and   shows how X differs from each of fileN. One column for each of   fileN is prepended to the output line to note how X&#8217;s line is   different from it.</p></div>  -<div class="paragraph"><p>A <tt>-</tt> character in the column N means that the line appears in  -fileN but it does not appear in the result. A <tt>+</tt> character  +<div class="paragraph"><p>A <code>-</code> character in the column N means that the line appears in  +fileN but it does not appear in the result. A <code>+</code> character   in the column N means that the line appears in the result,   and fileN does not have that line (in other words, the line was   added, from the point of view of that parent).</p></div>   <div class="paragraph"><p>In the above example output, the function signature was changed  -from both files (hence two <tt>-</tt> removals from both file1 and  -file2, plus <tt>++</tt> to mean one line that was added does not appear  +from both files (hence two <code>-</code> removals from both file1 and  +file2, plus <code>++</code> to mean one line that was added does not appear   in either file1 or file2). Also eight other lines are the same  -from file1 but do not appear in file2 (hence prefixed with <tt>+</tt>).</p></div>  -<div class="paragraph"><p>When shown by <tt>git diff-tree -c</tt>, it compares the parents of a  +from file1 but do not appear in file2 (hence prefixed with <code>+</code>).</p></div>  +<div class="paragraph"><p>When shown by <code>git diff-tree -c</code>, it compares the parents of a   merge commit with the merge result (i.e. file1..fileN are the  -parents). When shown by <tt>git diff-files -c</tt>, it compares the  +parents). When shown by <code>git diff-files -c</code>, it compares the   two unresolved merge parents with the working tree file   (i.e. file1 is stage 2 aka "our version", file2 is stage 3 aka   "their version").</p></div>  @@ -2491,48 +2499,48 @@  <div class="sectionbody">   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>git show v1.0.0</tt>  +<code>git show v1.0.0</code>   </dt>   <dd>   <p>  - Shows the tag <tt>v1.0.0</tt>, along with the object the tags  + Shows the tag <code>v1.0.0</code>, along with the object the tags   points at.   </p>   </dd>   <dt class="hdlist1">  -<tt>git show v1.0.0^{tree}</tt>  +<code>git show v1.0.0^{tree}</code>   </dt>   <dd>   <p>  - Shows the tree pointed to by the tag <tt>v1.0.0</tt>.  + Shows the tree pointed to by the tag <code>v1.0.0</code>.   </p>   </dd>   <dt class="hdlist1">  -<tt>git show -s --format=%s v1.0.0^{commit}</tt>  +<code>git show -s --format=%s v1.0.0^{commit}</code>   </dt>   <dd>   <p>   Shows the subject of the commit pointed to by the  - tag <tt>v1.0.0</tt>.  + tag <code>v1.0.0</code>.   </p>   </dd>   <dt class="hdlist1">  -<tt>git show next~10:Documentation/README</tt>  +<code>git show next~10:Documentation/README</code>   </dt>   <dd>   <p>  - Shows the contents of the file <tt>Documentation/README</tt> as  + Shows the contents of the file <code>Documentation/README</code> as   they were current in the 10th last commit of the branch  - <tt>next</tt>.  + <code>next</code>.   </p>   </dd>   <dt class="hdlist1">  -<tt>git show master:Makefile master:t/Makefile</tt>  +<code>git show master:Makefile master:t/Makefile</code>   </dt>   <dd>   <p>   Concatenates the contents of said Makefiles in the head  - of the branch <tt>master</tt>.  + of the branch <code>master</code>.   </p>   </dd>   </dl></div>  @@ -2580,33 +2588,33 @@  a warning if the commit log message given to it does not look   like a valid UTF-8 string, unless you explicitly say your   project uses a legacy encoding. The way to say this is to  - have i18n.commitencoding in <tt>.git/config</tt> file, like this:  + have i18n.commitencoding in <code>.git/config</code> file, like this:   </p>   <div class="listingblock">   <div class="content">  -<pre><tt>[i18n]  - commitencoding = ISO-8859-1</tt></pre>  +<pre><code>[i18n]  + commitencoding = ISO-8859-1</code></pre>   </div></div>   <div class="paragraph"><p>Commit objects created with the above setting record the value  -of <tt>i18n.commitencoding</tt> in its <tt>encoding</tt> header. This is to  +of <code>i18n.commitencoding</code> in its <code>encoding</code> header. This is to   help other people who look at them later. Lack of this header   implies that the commit log message is encoded in UTF-8.</p></div>   </li>   <li>   <p>   <em>git log</em>, <em>git show</em>, <em>git blame</em> and friends look at the  - <tt>encoding</tt> header of a commit object, and try to re-code the  + <code>encoding</code> header of a commit object, and try to re-code the   log message into UTF-8 unless otherwise specified. You can   specify the desired output encoding with  - <tt>i18n.logoutputencoding</tt> in <tt>.git/config</tt> file, like this:  + <code>i18n.logoutputencoding</code> in <code>.git/config</code> file, like this:   </p>   <div class="listingblock">   <div class="content">  -<pre><tt>[i18n]  - logoutputencoding = ISO-8859-1</tt></pre>  +<pre><code>[i18n]  + logoutputencoding = ISO-8859-1</code></pre>   </div></div>   <div class="paragraph"><p>If you do not have this configuration variable, the value of  -<tt>i18n.commitencoding</tt> is used instead.</p></div>  +<code>i18n.commitencoding</code> is used instead.</p></div>   </li>   </ol></div>   <div class="paragraph"><p>Note that we deliberately chose not to re-code the commit log  
diff --git a/git-update-index.html b/git-update-index.html index d31de5c..0d7c415 100644 --- a/git-update-index.html +++ b/git-update-index.html 
@@ -3,7 +3,7 @@  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   <head>   <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />  -<meta name="generator" content="AsciiDoc 8.6.6" />  +<meta name="generator" content="AsciiDoc 8.6.9" />   <title>git-update-index(1)</title>   <style type="text/css">   /* Shared CSS for AsciiDoc xhtml11 and html5 backends */  @@ -87,10 +87,16 @@  ul > li { color: #aaa; }   ul > li > * { color: black; }    -pre {  +.monospaced, code, pre {  + font-family: "Courier New", Courier, monospace;  + font-size: inherit;  + color: navy;   padding: 0;   margin: 0;   }  +pre {  + white-space: pre-wrap;  +}     #author {   color: #527bbd;  @@ -219,7 +225,7 @@  }     div.imageblock div.content { padding-left: 0; }  -span.image img { border-style: none; }  +span.image img { border-style: none; vertical-align: text-bottom; }   a.image:visited { color: white; }     dl {  @@ -349,7 +355,7 @@  margin-bottom: 0.1em;   }    -div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {  +div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {   margin-top: 0;   margin-bottom: 0;   }  @@ -407,18 +413,14 @@  span.overline { text-decoration: overline; }   span.line-through { text-decoration: line-through; }    +div.unbreakable { page-break-inside: avoid; }  +     /*   * xhtml11 specific   *   * */    -tt {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   div.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -452,12 +454,6 @@  *   * */    -.monospaced {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   table.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -537,6 +533,8 @@  @media print {   body.manpage div#toc { display: none; }   }  +  +   </style>   <script type="text/javascript">   /*<![CDATA[*/  @@ -581,7 +579,7 @@    function tocEntries(el, toclevels) {   var result = new Array;  - var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');  + var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');   // Function that scans the DOM tree for header elements (the DOM2   // nodeIterator API would be a better technique but not supported by all   // browsers).  @@ -610,7 +608,7 @@  var i;   for (i = 0; i < toc.childNodes.length; i++) {   var entry = toc.childNodes[i];  - if (entry.nodeName == 'div'  + if (entry.nodeName.toLowerCase() == 'div'   && entry.getAttribute("class")   && entry.getAttribute("class").match(/^toclevel/))   tocEntriesToRemove.push(entry);  @@ -656,7 +654,7 @@  var entriesToRemove = [];   for (i = 0; i < noteholder.childNodes.length; i++) {   var entry = noteholder.childNodes[i];  - if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")  + if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")   entriesToRemove.push(entry);   }   for (i = 0; i < entriesToRemove.length; i++) {  @@ -897,7 +895,7 @@  </p>   <div class="paragraph"><p>This option can be also used as a coarse file-level mechanism   to ignore uncommitted changes in tracked files (akin to what  -<tt>.gitignore</tt> does for untracked files).  +<code>.gitignore</code> does for untracked files).   Git will fail (gracefully) in case it needs to modify this file   in the index e.g. when merging in a commit;   thus, in case the assumed-untracked file is changed upstream,  @@ -932,7 +930,7 @@  <dd>   <p>   Runs <em>git update-index</em> itself on the paths whose index  - entries are different from those from the <tt>HEAD</tt> commit.  + entries are different from those from the <code>HEAD</code> commit.   </p>   </dd>   <dt class="hdlist1">  @@ -968,9 +966,9 @@  </dt>   <dd>   <p>  - By default, when a file <tt>path</tt> exists in the index,  - <em>git update-index</em> refuses an attempt to add <tt>path/file</tt>.  - Similarly if a file <tt>path/file</tt> exists, a file <tt>path</tt>  + By default, when a file <code>path</code> exists in the index,  + <em>git update-index</em> refuses an attempt to add <code>path/file</code>.  + Similarly if a file <code>path/file</code> exists, a file <code>path</code>   cannot be added. With --replace flag, existing entries   that conflict with the entry being added are   automatically removed with warning messages.  @@ -1002,7 +1000,7 @@  Write the resulting index out in the named on-disk format version.   Supported versions are 2, 3 and 4. The current default version is 2   or 3, depending on whether extra features are used, such as  - <tt>git add -N</tt>.  + <code>git add -N</code>.   </p>   <div class="paragraph"><p>Version 4 performs a simple pathname compression that reduces index   size by 30%-50% on large repositories, which results in faster load  @@ -1015,7 +1013,7 @@  </dt>   <dd>   <p>  - Only meaningful with <tt>--stdin</tt> or <tt>--index-info</tt>; paths are  + Only meaningful with <code>--stdin</code> or <code>--index-info</code>; paths are   separated with NUL character instead of LF.   </p>   </dd>  @@ -1031,7 +1029,7 @@  split into two files, $GIT_DIR/index and $GIT_DIR/sharedindex.&lt;SHA-1&gt;.   Changes are accumulated in $GIT_DIR/index while the shared   index file contains all index entries stays unchanged. If  - split-index mode is already enabled and <tt>--split-index</tt> is  + split-index mode is already enabled and <code>--split-index</code> is   given again, all changes in $GIT_DIR/index are pushed back to   the shared index file. This mode is designed for very large   indexes that take a signficant amount of time to read or write.  @@ -1052,7 +1050,7 @@  <p>   Files to act on.   Note that files beginning with <em>.</em> are discarded. This includes  - <tt>./file</tt> and <tt>dir/./file</tt>. If you don&#8217;t want this, then use  + <code>./file</code> and <code>dir/./file</code>. If you don&#8217;t want this, then use   cleaner names.   The same applies to directories ending <em>/</em> and paths with <em>//</em>   </p>  @@ -1081,7 +1079,7 @@  <div class="paragraph"><p>To pretend you have a file with mode and sha1 at path, say:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git update-index --cacheinfo mode sha1 path</tt></pre>  +<pre><code>$ git update-index --cacheinfo &lt;mode&gt;,&lt;sha1&gt;,&lt;path&gt;</code></pre>   </div></div>   <div class="paragraph"><p><em>--info-only</em> is used to register files without placing them in the object   database. This is useful for status-only repositories.</p></div>  @@ -1095,7 +1093,7 @@  <div class="sect1">   <h2 id="_using_index_info">Using --index-info</h2>   <div class="sectionbody">  -<div class="paragraph"><p><tt>--index-info</tt> is a more powerful mechanism that lets you feed  +<div class="paragraph"><p><code>--index-info</code> is a more powerful mechanism that lets you feed   multiple entry definitions from the standard input, and designed   specifically for scripts. It can take inputs of three formats:</p></div>   <div class="olist arabic"><ol class="arabic">  @@ -1129,16 +1127,16 @@  <div class="paragraph"><p>For example, starting with this index:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git ls-files -s  -100644 8a1218a1024a212bb3db30becd860315f9f3ac52 0 frotz</tt></pre>  +<pre><code>$ git ls-files -s  +100644 8a1218a1024a212bb3db30becd860315f9f3ac52 0 frotz</code></pre>   </div></div>  -<div class="paragraph"><p>you can feed the following input to <tt>--index-info</tt>:</p></div>  +<div class="paragraph"><p>you can feed the following input to <code>--index-info</code>:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git update-index --index-info  +<pre><code>$ git update-index --index-info   0 0000000000000000000000000000000000000000 frotz   100644 8a1218a1024a212bb3db30becd860315f9f3ac52 1 frotz  -100755 8a1218a1024a212bb3db30becd860315f9f3ac52 2 frotz</tt></pre>  +100755 8a1218a1024a212bb3db30becd860315f9f3ac52 2 frotz</code></pre>   </div></div>   <div class="paragraph"><p>The first line of the input feeds 0 as the mode to remove the   path; the SHA-1 does not matter as long as it is well formatted.  @@ -1146,9 +1144,9 @@  for that path. After the above, we would end up with this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git ls-files -s  +<pre><code>$ git ls-files -s   100644 8a1218a1024a212bb3db30becd860315f9f3ac52 1 frotz  -100755 8a1218a1024a212bb3db30becd860315f9f3ac52 2 frotz</tt></pre>  +100755 8a1218a1024a212bb3db30becd860315f9f3ac52 2 frotz</code></pre>   </div></div>   </div>   </div>  @@ -1156,11 +1154,11 @@  <h2 id="_using_8220_assume_unchanged_8221_bit">Using &#8220;assume unchanged&#8221; bit</h2>   <div class="sectionbody">   <div class="paragraph"><p>Many operations in Git depend on your filesystem to have an  -efficient <tt>lstat(2)</tt> implementation, so that <tt>st_mtime</tt>  +efficient <code>lstat(2)</code> implementation, so that <code>st_mtime</code>   information for working tree files can be cheaply checked to see   if the file contents have changed from the version recorded in   the index file. Unfortunately, some filesystems have  -inefficient <tt>lstat(2)</tt>. If your filesystem is one of them, you  +inefficient <code>lstat(2)</code>. If your filesystem is one of them, you   can set "assume unchanged" bit to paths you have not changed to   cause Git not to do this check. Note that setting this bit on a   path does not mean Git will check the contents of the file to  @@ -1168,18 +1166,18 @@  assume it has <strong>not</strong> changed. When you make changes to working   tree files, you have to explicitly tell Git about it by dropping   "assume unchanged" bit, either before or after you modify them.</p></div>  -<div class="paragraph"><p>In order to set "assume unchanged" bit, use <tt>--assume-unchanged</tt>  -option. To unset, use <tt>--no-assume-unchanged</tt>. To see which files  -have the "assume unchanged" bit set, use <tt>git ls-files -v</tt>  +<div class="paragraph"><p>In order to set "assume unchanged" bit, use <code>--assume-unchanged</code>  +option. To unset, use <code>--no-assume-unchanged</code>. To see which files  +have the "assume unchanged" bit set, use <code>git ls-files -v</code>   (see <a href="git-ls-files.html">git-ls-files(1)</a>).</p></div>  -<div class="paragraph"><p>The command looks at <tt>core.ignorestat</tt> configuration variable. When  -this is true, paths updated with <tt>git update-index paths...</tt> and  +<div class="paragraph"><p>The command looks at <code>core.ignorestat</code> configuration variable. When  +this is true, paths updated with <code>git update-index paths...</code> and   paths updated with other Git commands that update both index and   working tree (e.g. <em>git apply --index</em>, <em>git checkout-index -u</em>,   and <em>git read-tree -u</em>) are automatically marked as "assume   unchanged". Note that "assume unchanged" bit is <strong>not</strong> set if  -<tt>git update-index --refresh</tt> finds the working tree file matches  -the index (use <tt>git update-index --really-refresh</tt> if you want  +<code>git update-index --refresh</code> finds the working tree file matches  +the index (use <code>git update-index --really-refresh</code> if you want   to mark them as "assume unchanged").</p></div>   </div>   </div>  @@ -1189,16 +1187,16 @@  <div class="paragraph"><p>To update and refresh only the files already checked out:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git checkout-index -n -f -a &amp;&amp; git update-index --ignore-missing --refresh</tt></pre>  +<pre><code>$ git checkout-index -n -f -a &amp;&amp; git update-index --ignore-missing --refresh</code></pre>   </div></div>   <div class="dlist"><dl>   <dt class="hdlist1">  -On an inefficient filesystem with <tt>core.ignorestat</tt> set  +On an inefficient filesystem with <code>core.ignorestat</code> set   </dt>   <dd>   <div class="listingblock">   <div class="content">  -<pre><tt>$ git update-index --really-refresh <b>&lt;1&gt;</b>  +<pre><code>$ git update-index --really-refresh <b>&lt;1&gt;</b>   $ git update-index --no-assume-unchanged foo.c <b>&lt;2&gt;</b>   $ git diff --name-only <b>&lt;3&gt;</b>   $ edit foo.c  @@ -1210,7 +1208,7 @@  $ git diff --name-only <b>&lt;7&gt;</b>   $ git update-index --no-assume-unchanged foo.c <b>&lt;8&gt;</b>   $ git diff --name-only <b>&lt;9&gt;</b>  -M foo.c</tt></pre>  +M foo.c</code></pre>   </div></div>   <div class="colist arabic"><ol>   <li>  @@ -1285,20 +1283,20 @@  <div class="sect1">   <h2 id="_configuration">Configuration</h2>   <div class="sectionbody">  -<div class="paragraph"><p>The command honors <tt>core.filemode</tt> configuration variable. If  +<div class="paragraph"><p>The command honors <code>core.filemode</code> configuration variable. If   your repository is on a filesystem whose executable bits are   unreliable, this should be set to <em>false</em> (see <a href="git-config.html">git-config(1)</a>).   This causes the command to ignore differences in file modes recorded   in the index and the file mode on the filesystem if they differ only on   executable bit. On such an unfortunate filesystem, you may   need to use <em>git update-index --chmod=</em>.</p></div>  -<div class="paragraph"><p>Quite similarly, if <tt>core.symlinks</tt> configuration variable is set  +<div class="paragraph"><p>Quite similarly, if <code>core.symlinks</code> configuration variable is set   to <em>false</em> (see <a href="git-config.html">git-config(1)</a>), symbolic links are checked out   as plain files, and this command does not modify a recorded file mode   from symbolic link to regular file.</p></div>  -<div class="paragraph"><p>The command looks at <tt>core.ignorestat</tt> configuration variable. See  +<div class="paragraph"><p>The command looks at <code>core.ignorestat</code> configuration variable. See   <em>Using "assume unchanged" bit</em> section above.</p></div>  -<div class="paragraph"><p>The command also looks at <tt>core.trustctime</tt> configuration variable.  +<div class="paragraph"><p>The command also looks at <code>core.trustctime</code> configuration variable.   It can be useful when the inode change time is regularly modified by   something outside Git (file system crawlers and backup systems use   ctime for marking files processed) (see <a href="git-config.html">git-config(1)</a>).</p></div>  @@ -1322,7 +1320,7 @@  <div id="footnotes"><hr /></div>   <div id="footer">   <div id="footer-text">  -Last updated 2014-07-16 14:50:19 PDT  +Last updated 2014-09-19 15:32:09 PDT   </div>   </div>   </body>  
diff --git a/git-update-index.txt b/git-update-index.txt index dfc09d9..82eca6f 100644 --- a/git-update-index.txt +++ b/git-update-index.txt 
@@ -202,7 +202,7 @@  To pretend you have a file with mode and sha1 at path, say:    ---------------- -$ git update-index --cacheinfo mode sha1 path +$ git update-index --cacheinfo <mode>,<sha1>,<path>  ----------------    '--info-only' is used to register files without placing them in the object 
diff --git a/git.html b/git.html index 6ec947d..761a6ef 100644 --- a/git.html +++ b/git.html 
@@ -3,7 +3,7 @@  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   <head>   <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />  -<meta name="generator" content="AsciiDoc 8.6.6" />  +<meta name="generator" content="AsciiDoc 8.6.9" />   <title>git(1)</title>   <style type="text/css">   /* Shared CSS for AsciiDoc xhtml11 and html5 backends */  @@ -87,10 +87,16 @@  ul > li { color: #aaa; }   ul > li > * { color: black; }    -pre {  +.monospaced, code, pre {  + font-family: "Courier New", Courier, monospace;  + font-size: inherit;  + color: navy;   padding: 0;   margin: 0;   }  +pre {  + white-space: pre-wrap;  +}     #author {   color: #527bbd;  @@ -219,7 +225,7 @@  }     div.imageblock div.content { padding-left: 0; }  -span.image img { border-style: none; }  +span.image img { border-style: none; vertical-align: text-bottom; }   a.image:visited { color: white; }     dl {  @@ -349,7 +355,7 @@  margin-bottom: 0.1em;   }    -div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {  +div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {   margin-top: 0;   margin-bottom: 0;   }  @@ -407,18 +413,14 @@  span.overline { text-decoration: overline; }   span.line-through { text-decoration: line-through; }    +div.unbreakable { page-break-inside: avoid; }  +     /*   * xhtml11 specific   *   * */    -tt {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   div.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -452,12 +454,6 @@  *   * */    -.monospaced {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   table.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -537,6 +533,8 @@  @media print {   body.manpage div#toc { display: none; }   }  +  +   </style>   <script type="text/javascript">   /*<![CDATA[*/  @@ -581,7 +579,7 @@    function tocEntries(el, toclevels) {   var result = new Array;  - var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');  + var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');   // Function that scans the DOM tree for header elements (the DOM2   // nodeIterator API would be a better technique but not supported by all   // browsers).  @@ -610,7 +608,7 @@  var i;   for (i = 0; i < toc.childNodes.length; i++) {   var entry = toc.childNodes[i];  - if (entry.nodeName == 'div'  + if (entry.nodeName.toLowerCase() == 'div'   && entry.getAttribute("class")   && entry.getAttribute("class").match(/^toclevel/))   tocEntriesToRemove.push(entry);  @@ -656,7 +654,7 @@  var entriesToRemove = [];   for (i = 0; i < noteholder.childNodes.length; i++) {   var entry = noteholder.childNodes[i];  - if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")  + if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")   entriesToRemove.push(entry);   }   for (i = 0; i < entriesToRemove.length; i++) {  @@ -774,7 +772,7 @@  individual Git commands with "git help command". <a href="gitcli.html">gitcli(7)</a>   manual page gives you an overview of the command-line command syntax.</p></div>   <div class="paragraph"><p>Formatted and hyperlinked version of the latest Git documentation  -can be viewed at <tt>http://git-htmldocs.googlecode.com/git/git.html</tt>.</p></div>  +can be viewed at <code>http://git-htmldocs.googlecode.com/git/git.html</code>.</p></div>   </div>   </div>   <div class="sect1">  @@ -801,8 +799,8 @@  </p>   <div class="paragraph"><p>Other options are available to control how the manual page is   displayed. See <a href="git-help.html">git-help(1)</a> for more information,  -because <tt>git --help ...</tt> is converted internally into <tt>git  -help ...</tt>.</p></div>  +because <code>git --help ...</code> is converted internally into <code>git  +help ...</code>.</p></div>   </dd>   <dt class="hdlist1">   -C &lt;path&gt;  @@ -810,18 +808,18 @@  <dd>   <p>   Run as if git was started in <em>&lt;path&gt;</em> instead of the current working  - directory. When multiple <tt>-C</tt> options are given, each subsequent  - non-absolute <tt>-C &lt;path&gt;</tt> is interpreted relative to the preceding <tt>-C  - &lt;path&gt;</tt>.  + directory. When multiple <code>-C</code> options are given, each subsequent  + non-absolute <code>-C &lt;path&gt;</code> is interpreted relative to the preceding <code>-C  + &lt;path&gt;</code>.   </p>  -<div class="paragraph"><p>This option affects options that expect path name like <tt>--git-dir</tt> and  -<tt>--work-tree</tt> in that their interpretations of the path names would be  -made relative to the working directory caused by the <tt>-C</tt> option. For  +<div class="paragraph"><p>This option affects options that expect path name like <code>--git-dir</code> and  +<code>--work-tree</code> in that their interpretations of the path names would be  +made relative to the working directory caused by the <code>-C</code> option. For   example the following invocations are equivalent:</p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>git --git-dir=a.git --work-tree=b -C c status  -git --git-dir=c/a.git --work-tree=c/b status</tt></pre>  +<pre><code>git --git-dir=a.git --work-tree=b -C c status  +git --git-dir=c/a.git --work-tree=c/b status</code></pre>   </div></div>   </dd>   <dt class="hdlist1">  @@ -834,10 +832,10 @@  The &lt;name&gt; is expected in the same format as listed by   <em>git config</em> (subkeys separated by dots).   </p>  -<div class="paragraph"><p>Note that omitting the <tt>=</tt> in <tt>git -c foo.bar ...</tt> is allowed and sets  -<tt>foo.bar</tt> to the boolean true value (just like <tt>[foo]bar</tt> would in a  -config file). Including the equals but with an empty value (like <tt>git -c  -foo.bar= ...</tt>) sets <tt>foo.bar</tt> to the empty string.</p></div>  +<div class="paragraph"><p>Note that omitting the <code>=</code> in <code>git -c foo.bar ...</code> is allowed and sets  +<code>foo.bar</code> to the boolean true value (just like <code>[foo]bar</code> would in a  +config file). Including the equals but with an empty value (like <code>git -c  +foo.bar= ...</code>) sets <code>foo.bar</code> to the empty string.</p></div>   </dd>   <dt class="hdlist1">   --exec-path[=&lt;path&gt;]  @@ -864,7 +862,7 @@  </dt>   <dd>   <p>  - Print the manpath (see <tt>man(1)</tt>) for the man pages for  + Print the manpath (see <code>man(1)</code>) for the man pages for   this version of Git and exit.   </p>   </dd>  @@ -886,7 +884,7 @@  <dd>   <p>   Pipe all output into <em>less</em> (or if set, $PAGER) if standard  - output is a terminal. This overrides the <tt>pager.&lt;cmd&gt;</tt>  + output is a terminal. This overrides the <code>pager.&lt;cmd&gt;</code>   configuration options (see the "Configuration Mechanism" section   below).   </p>  @@ -928,7 +926,7 @@  <dd>   <p>   Set the Git namespace. See <a href="gitnamespaces.html">gitnamespaces(7)</a> for more  - details. Equivalent to setting the <tt>GIT_NAMESPACE</tt> environment  + details. Equivalent to setting the <code>GIT_NAMESPACE</code> environment   variable.   </p>   </dd>  @@ -957,8 +955,8 @@  <dd>   <p>   Treat pathspecs literally (i.e. no globbing, no pathspec magic).  - This is equivalent to setting the <tt>GIT_LITERAL_PATHSPECS</tt> environment  - variable to <tt>1</tt>.  + This is equivalent to setting the <code>GIT_LITERAL_PATHSPECS</code> environment  + variable to <code>1</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -967,7 +965,7 @@  <dd>   <p>   Add "glob" magic to all pathspec. This is equivalent to setting  - the <tt>GIT_GLOB_PATHSPECS</tt> environment variable to <tt>1</tt>. Disabling  + the <code>GIT_GLOB_PATHSPECS</code> environment variable to <code>1</code>. Disabling   globbing on individual pathspecs can be done using pathspec   magic ":(literal)"   </p>  @@ -978,7 +976,7 @@  <dd>   <p>   Add "literal" magic to all pathspec. This is equivalent to setting  - the <tt>GIT_NOGLOB_PATHSPECS</tt> environment variable to <tt>1</tt>. Enabling  + the <code>GIT_NOGLOB_PATHSPECS</code> environment variable to <code>1</code>. Enabling   globbing on individual pathspecs can be done using pathspec   magic ":(glob)"   </p>  @@ -989,7 +987,7 @@  <dd>   <p>   Add "icase" magic to all pathspec. This is equivalent to setting  - the <tt>GIT_ICASE_PATHSPECS</tt> environment variable to <tt>1</tt>.  + the <code>GIT_ICASE_PATHSPECS</code> environment variable to <code>1</code>.   </p>   </dd>   </dl></div>  @@ -2191,7 +2189,7 @@  like this:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>#  +<pre><code>#   # A '#' or ';' character indicates a comment.   #    @@ -2203,7 +2201,7 @@  ; user identity   [user]   name = "Junio C Hamano"  - email = "gitster@pobox.com"</tt></pre>  + email = "gitster@pobox.com"</code></pre>   </div></div>   <div class="paragraph"><p>Various commands read from the configuration file and adjust   their operation accordingly. See <a href="git-config.html">git-config(1)</a> for a  @@ -2274,7 +2272,7 @@  <dd>   <p>   Indicates that an object type is required.  - Currently one of: <tt>blob</tt>, <tt>tree</tt>, <tt>commit</tt>, or <tt>tag</tt>.  + Currently one of: <code>blob</code>, <code>tree</code>, <code>commit</code>, or <code>tag</code>.   </p>   </dd>   <dt class="hdlist1">  @@ -2283,7 +2281,7 @@  <dd>   <p>   Indicates a filename - almost always relative to the  - root of the tree structure <tt>GIT_INDEX_FILE</tt> describes.  + root of the tree structure <code>GIT_INDEX_FILE</code> describes.   </p>   </dd>   </dl></div>  @@ -2309,7 +2307,7 @@  <dd>   <p>   a valid tag <em>name</em>  - (i.e. a <tt>refs/tags/&lt;tag&gt;</tt> reference).  + (i.e. a <code>refs/tags/&lt;tag&gt;</code> reference).   </p>   </dd>   <dt class="hdlist1">  @@ -2318,7 +2316,7 @@  <dd>   <p>   a valid head <em>name</em>  - (i.e. a <tt>refs/heads/&lt;head&gt;</tt> reference).  + (i.e. a <code>refs/heads/&lt;head&gt;</code> reference).   </p>   </dd>   </dl></div>  @@ -2332,7 +2330,7 @@  <div class="paragraph"><p>Please see the <a href="gitrepository-layout.html">gitrepository-layout(5)</a> document.</p></div>   <div class="paragraph"><p>Read <a href="githooks.html">githooks(5)</a> for more details about each hook.</p></div>   <div class="paragraph"><p>Higher level SCMs may provide and manage additional information in the  -<tt>$GIT_DIR</tt>.</p></div>  +<code>$GIT_DIR</code>.</p></div>   </div>   </div>   <div class="sect1">  @@ -2357,7 +2355,7 @@  <dd>   <p>   This environment allows the specification of an alternate  - index file. If not specified, the default of <tt>$GIT_DIR/index</tt>  + index file. If not specified, the default of <code>$GIT_DIR/index</code>   is used.   </p>   </dd>  @@ -2378,7 +2376,7 @@  <p>   If the object storage directory is specified via this   environment variable then the sha1 directories are created  - underneath - otherwise the default <tt>$GIT_DIR/objects</tt>  + underneath - otherwise the default <code>$GIT_DIR/objects</code>   directory is used.   </p>   </dd>  @@ -2400,7 +2398,7 @@  <dd>   <p>   If the <em>GIT_DIR</em> environment variable is set then it  - specifies a path to use instead of the default <tt>.git</tt>  + specifies a path to use instead of the default <code>.git</code>   for the base of the repository.   The <em>--git-dir</em> command-line option also sets this value.   </p>  @@ -2518,7 +2516,7 @@  </p>   <div class="literalblock">   <div class="content">  -<pre><tt>path old-file old-hex old-mode new-file new-hex new-mode</tt></pre>  +<pre><code>path old-file old-hex old-mode new-file new-hex new-mode</code></pre>   </div></div>   <div class="paragraph"><p>where:</p></div>   </dd>  @@ -2547,8 +2545,8 @@  are the octal representation of the file modes.   </p>   <div class="paragraph"><p>The file parameters can point at the user&#8217;s working file  -(e.g. <tt>new-file</tt> in "git-diff-files"), <tt>/dev/null</tt> (e.g. <tt>old-file</tt>  -when a new file is added), or a temporary file (e.g. <tt>old-file</tt> in the  +(e.g. <code>new-file</code> in "git-diff-files"), <code>/dev/null</code> (e.g. <code>old-file</code>  +when a new file is added), or a temporary file (e.g. <code>old-file</code> in the   index). <em>GIT_EXTERNAL_DIFF</em> should not worry about unlinking the   temporary file --- it is removed when <em>GIT_EXTERNAL_DIFF</em> exits.</p></div>   <div class="paragraph"><p>For a path that is unmerged, <em>GIT_EXTERNAL_DIFF</em> is called with 1  @@ -2592,9 +2590,9 @@  </dt>   <dd>   <p>  - This environment variable overrides <tt>$PAGER</tt>. If it is set  + This environment variable overrides <code>$PAGER</code>. If it is set   to an empty string or to the value "cat", Git will not launch  - a pager. See also the <tt>core.pager</tt> option in  + a pager. See also the <code>core.pager</code> option in   <a href="git-config.html">git-config(1)</a>.   </p>   </dd>  @@ -2603,10 +2601,10 @@  </dt>   <dd>   <p>  - This environment variable overrides <tt>$EDITOR</tt> and <tt>$VISUAL</tt>.  + This environment variable overrides <code>$EDITOR</code> and <code>$VISUAL</code>.   It is used by several Git commands when, on interactive mode,   an editor is to be launched. See also <a href="git-var.html">git-var(1)</a>  - and the <tt>core.editor</tt> option in <a href="git-config.html">git-config(1)</a>.  + and the <code>core.editor</code> option in <a href="git-config.html">git-config(1)</a>.   </p>   </dd>   <dt class="hdlist1">  @@ -2628,7 +2626,7 @@  you will need to wrap the program and options into a shell script,   then set GIT_SSH to refer to the shell script.</p></div>   <div class="paragraph"><p>Usually it is easier to configure any desired options through your  -personal <tt>.ssh/config</tt> file. Please consult your ssh documentation  +personal <code>.ssh/config</code> file. Please consult your ssh documentation   for further details.</p></div>   </dd>   <dt class="hdlist1">  @@ -2649,10 +2647,10 @@  <dd>   <p>   Whether to skip reading settings from the system-wide  - <tt>$(prefix)/etc/gitconfig</tt> file. This environment variable can  - be used along with <tt>$HOME</tt> and <tt>$XDG_CONFIG_HOME</tt> to create a  + <code>$(prefix)/etc/gitconfig</code> file. This environment variable can  + be used along with <code>$HOME</code> and <code>$XDG_CONFIG_HOME</code> to create a   predictable environment for a picky script, or you can set it  - temporarily to avoid using a buggy <tt>/etc/gitconfig</tt> file while  + temporarily to avoid using a buggy <code>/etc/gitconfig</code> file while   waiting for someone with sufficient permissions to fix it.   </p>   </dd>  @@ -2753,13 +2751,13 @@  </dt>   <dd>   <p>  - Setting this variable to <tt>1</tt> will cause Git to treat all  + Setting this variable to <code>1</code> will cause Git to treat all   pathspecs literally, rather than as glob patterns. For example,  - running <tt>GIT_LITERAL_PATHSPECS=1 git log -- '*.c'</tt> will search  - for commits that touch the path <tt>*.c</tt>, not any paths that the  - glob <tt>*.c</tt> matches. You might want this if you are feeding  + running <code>GIT_LITERAL_PATHSPECS=1 git log -- '*.c'</code> will search  + for commits that touch the path <code>*.c</code>, not any paths that the  + glob <code>*.c</code> matches. You might want this if you are feeding   literal paths to Git (e.g., paths previously given to you by  - <tt>git ls-tree</tt>, <tt>--raw</tt> diff output, etc).  + <code>git ls-tree</code>, <code>--raw</code> diff output, etc).   </p>   </dd>   <dt class="hdlist1">  @@ -2767,7 +2765,7 @@  </dt>   <dd>   <p>  - Setting this variable to <tt>1</tt> will cause Git to treat all  + Setting this variable to <code>1</code> will cause Git to treat all   pathspecs as glob patterns (aka "glob" magic).   </p>   </dd>  @@ -2776,7 +2774,7 @@  </dt>   <dd>   <p>  - Setting this variable to <tt>1</tt> will cause Git to treat all  + Setting this variable to <code>1</code> will cause Git to treat all   pathspecs as literal (aka "literal" magic).   </p>   </dd>  @@ -2785,7 +2783,7 @@  </dt>   <dd>   <p>  - Setting this variable to <tt>1</tt> will cause Git to treat all  + Setting this variable to <code>1</code> will cause Git to treat all   pathspecs as case-insensitive.   </p>   </dd>  @@ -2799,7 +2797,7 @@  typically the name of the high-level command that updated   the ref), in addition to the old and new values of the ref.   A scripted Porcelain command can use set_reflog_action  - helper function in <tt>git-sh-setup</tt> to set its name to this  + helper function in <code>git-sh-setup</code> to set its name to this   variable when it is invoked as the top level command by the   end user, to be recorded in the body of the reflog.   </p>  @@ -2837,10 +2835,10 @@  efficiency may later be compressed together into "pack files".</p></div>   <div class="paragraph"><p>Named pointers called refs mark interesting points in history. A ref   may contain the SHA-1 name of an object or the name of another ref. Refs  -with names beginning <tt>ref/head/</tt> contain the SHA-1 name of the most  +with names beginning <code>ref/head/</code> contain the SHA-1 name of the most   recent commit (or "head") of a branch under development. SHA-1 names of  -tags of interest are stored under <tt>ref/tags/</tt>. A special ref named  -<tt>HEAD</tt> contains the name of the currently checked-out branch.</p></div>  +tags of interest are stored under <code>ref/tags/</code>. A special ref named  +<code>HEAD</code> contains the name of the currently checked-out branch.</p></div>   <div class="paragraph"><p>The index file is initialized with a list of all paths and, for each   path, a blob object and a set of attributes. The blob object represents   the contents of the file as of the head of the current branch. The  @@ -2912,7 +2910,7 @@  <div id="footnotes"><hr /></div>   <div id="footer">   <div id="footer-text">  -Last updated 2014-09-09 14:15:21 PDT  +Last updated 2014-09-19 15:32:09 PDT   </div>   </div>   </body>  
diff --git a/git.txt b/git.txt index 26de4dd..8b2c542 100644 --- a/git.txt +++ b/git.txt 
@@ -43,9 +43,10 @@  branch of the `git.git` repository.  Documentation for older releases are available here:   -* link:v2.1.0/git.html[documentation for release 2.1] +* link:v2.1.1/git.html[documentation for release 2.1.1]    * release notes for + link:RelNotes/2.1.1.txt[2.1.1],  link:RelNotes/2.1.0.txt[2.1].    * link:v2.0.4/git.html[documentation for release 2.0.4] 
diff --git a/pretty-formats.txt b/pretty-formats.txt index eac7909..6c30723 100644 --- a/pretty-formats.txt +++ b/pretty-formats.txt 
@@ -115,7 +115,8 @@  - '%aD': author date, RFC2822 style  - '%ar': author date, relative  - '%at': author date, UNIX timestamp -- '%ai': author date, ISO 8601 format +- '%ai': author date, ISO 8601-like format +- '%aI': author date, strict ISO 8601 format  - '%cn': committer name  - '%cN': committer name (respecting .mailmap, see  linkgit:git-shortlog[1] or linkgit:git-blame[1]) @@ -126,7 +127,8 @@  - '%cD': committer date, RFC2822 style  - '%cr': committer date, relative  - '%ct': committer date, UNIX timestamp -- '%ci': committer date, ISO 8601 format +- '%ci': committer date, ISO 8601-like format +- '%cI': committer date, strict ISO 8601 format  - '%d': ref names, like the --decorate option of linkgit:git-log[1]  - '%e': encoding  - '%s': subject 
diff --git a/rev-list-options.txt b/rev-list-options.txt index deb8cca..5d311b8 100644 --- a/rev-list-options.txt +++ b/rev-list-options.txt 
@@ -677,7 +677,7 @@  --relative-date:: 	Synonym for `--date=relative`.   ---date=(relative|local|default|iso|rfc|short|raw):: +--date=(relative|local|default|iso|iso-strict|rfc|short|raw):: 	Only takes effect for dates shown in human-readable format, such 	as when using `--pretty`. `log.date` config variable sets a default 	value for the log command's `--date` option. @@ -687,7 +687,16 @@  +  `--date=local` shows timestamps in user's local time zone.  + -`--date=iso` (or `--date=iso8601`) shows timestamps in ISO 8601 format. +`--date=iso` (or `--date=iso8601`) shows timestamps in a ISO 8601-like format. +The differences to the strict ISO 8601 format are: + +	- a space instead of the `T` date/time delimiter +	- a space between time and time zone +	- no colon between hours and minutes of the time zone + ++ +`--date=iso-strict` (or `--date=iso8601-strict`) shows timestamps in strict +ISO 8601 format.  +  `--date=rfc` (or `--date=rfc2822`) shows timestamps in RFC 2822  format, often found in email messages. 
diff --git a/technical/api-strbuf.html b/technical/api-strbuf.html index d45777b..f931c5b 100644 --- a/technical/api-strbuf.html +++ b/technical/api-strbuf.html 
@@ -3,7 +3,7 @@  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">   <head>   <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />  -<meta name="generator" content="AsciiDoc 8.6.6" />  +<meta name="generator" content="AsciiDoc 8.6.9" />   <title>strbuf API</title>   <style type="text/css">   /* Shared CSS for AsciiDoc xhtml11 and html5 backends */  @@ -87,10 +87,16 @@  ul > li { color: #aaa; }   ul > li > * { color: black; }    -pre {  +.monospaced, code, pre {  + font-family: "Courier New", Courier, monospace;  + font-size: inherit;  + color: navy;   padding: 0;   margin: 0;   }  +pre {  + white-space: pre-wrap;  +}     #author {   color: #527bbd;  @@ -219,7 +225,7 @@  }     div.imageblock div.content { padding-left: 0; }  -span.image img { border-style: none; }  +span.image img { border-style: none; vertical-align: text-bottom; }   a.image:visited { color: white; }     dl {  @@ -349,7 +355,7 @@  margin-bottom: 0.1em;   }    -div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {  +div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {   margin-top: 0;   margin-bottom: 0;   }  @@ -407,18 +413,14 @@  span.overline { text-decoration: overline; }   span.line-through { text-decoration: line-through; }    +div.unbreakable { page-break-inside: avoid; }  +     /*   * xhtml11 specific   *   * */    -tt {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   div.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -452,12 +454,6 @@  *   * */    -.monospaced {  - font-family: monospace;  - font-size: inherit;  - color: navy;  -}  -   table.tableblock {   margin-top: 1.0em;   margin-bottom: 1.5em;  @@ -537,6 +533,8 @@  @media print {   body.manpage div#toc { display: none; }   }  +  +   </style>   <script type="text/javascript">   /*<![CDATA[*/  @@ -581,7 +579,7 @@    function tocEntries(el, toclevels) {   var result = new Array;  - var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');  + var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');   // Function that scans the DOM tree for header elements (the DOM2   // nodeIterator API would be a better technique but not supported by all   // browsers).  @@ -610,7 +608,7 @@  var i;   for (i = 0; i < toc.childNodes.length; i++) {   var entry = toc.childNodes[i];  - if (entry.nodeName == 'div'  + if (entry.nodeName.toLowerCase() == 'div'   && entry.getAttribute("class")   && entry.getAttribute("class").match(/^toclevel/))   tocEntriesToRemove.push(entry);  @@ -656,7 +654,7 @@  var entriesToRemove = [];   for (i = 0; i < noteholder.childNodes.length; i++) {   var entry = noteholder.childNodes[i];  - if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")  + if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")   entriesToRemove.push(entry);   }   for (i = 0; i < entriesToRemove.length; i++) {  @@ -751,22 +749,22 @@  <div class="olist arabic"><ol class="arabic">   <li>   <p>  -The <tt>buf</tt> member is never NULL, so it can be used in any usual C  +The <code>buf</code> member is never NULL, so it can be used in any usual C   string operations safely. strbuf&#8217;s <em>have</em> to be initialized either by  -<tt>strbuf_init()</tt> or by <tt>= STRBUF_INIT</tt> before the invariants, though.  +<code>strbuf_init()</code> or by <code>= STRBUF_INIT</code> before the invariants, though.   </p>  -<div class="paragraph"><p>Do <strong>not</strong> assume anything on what <tt>buf</tt> really is (e.g. if it is  -allocated memory or not), use <tt>strbuf_detach()</tt> to unwrap a memory  +<div class="paragraph"><p>Do <strong>not</strong> assume anything on what <code>buf</code> really is (e.g. if it is  +allocated memory or not), use <code>strbuf_detach()</code> to unwrap a memory   buffer from its strbuf shell in a safe way. That is the sole supported  -way. This will give you a malloced buffer that you can later <tt>free()</tt>.</p></div>  +way. This will give you a malloced buffer that you can later <code>free()</code>.</p></div>   <div class="paragraph"><p>However, it is totally safe to modify anything in the string pointed by  -the <tt>buf</tt> member, between the indices <tt>0</tt> and <tt>len-1</tt> (inclusive).</p></div>  +the <code>buf</code> member, between the indices <code>0</code> and <code>len-1</code> (inclusive).</p></div>   </li>   <li>   <p>  -The <tt>buf</tt> member is a byte array that has at least <tt>len + 1</tt> bytes  - allocated. The extra byte is used to store a <tt>'\0'</tt>, allowing the  - <tt>buf</tt> member to be a valid C-string. Every strbuf function ensure this  +The <code>buf</code> member is a byte array that has at least <code>len + 1</code> bytes  + allocated. The extra byte is used to store a <code>'\0'</code>, allowing the  + <code>buf</code> member to be a valid C-string. Every strbuf function ensure this   invariant is preserved.   </p>   <div class="admonitionblock">  @@ -780,22 +778,22 @@  </div>   <div class="listingblock">   <div class="content">  -<pre><tt>strbuf_grow(sb, SOME_SIZE); <b>&lt;1&gt;</b>  -strbuf_setlen(sb, sb-&gt;len + SOME_OTHER_SIZE);</tt></pre>  +<pre><code>strbuf_grow(sb, SOME_SIZE); <b>&lt;1&gt;</b>  +strbuf_setlen(sb, sb-&gt;len + SOME_OTHER_SIZE);</code></pre>   </div></div>   <div class="colist arabic"><ol>   <li>   <p>  -Here, the memory array starting at <tt>sb-&gt;buf</tt>, and of length  -<tt>strbuf_avail(sb)</tt> is all yours, and you can be sure that  -<tt>strbuf_avail(sb)</tt> is at least <tt>SOME_SIZE</tt>.  +Here, the memory array starting at <code>sb-&gt;buf</code>, and of length  +<code>strbuf_avail(sb)</code> is all yours, and you can be sure that  +<code>strbuf_avail(sb)</code> is at least <code>SOME_SIZE</code>.   </p>   <div class="admonitionblock">   <table><tr>   <td class="icon">   <div class="title">Note</div>   </td>  -<td class="content"><tt>SOME_OTHER_SIZE</tt> must be smaller or equal to <tt>strbuf_avail(sb)</tt>.</td>  +<td class="content"><code>SOME_OTHER_SIZE</code> must be smaller or equal to <code>strbuf_avail(sb)</code>.</td>   </tr></table>   </div>   <div class="paragraph"><p>Doing so is safe, though if it has to be done in many places, adding the  @@ -805,9 +803,9 @@  <td class="icon">   <div class="title">Warning</div>   </td>  -<td class="content">Do <em>not</em> assume that the area that is yours is of size <tt>alloc  -- 1</tt> even if it&#8217;s true in the current implementation. Alloc is somehow a  -"private" member that should not be messed with. Use <tt>strbuf_avail()</tt>  +<td class="content">Do <em>not</em> assume that the area that is yours is of size <code>alloc  +- 1</code> even if it&#8217;s true in the current implementation. Alloc is somehow a  +"private" member that should not be messed with. Use <code>strbuf_avail()</code>   instead.</td>   </tr></table>   </div>  @@ -823,12 +821,12 @@  <div class="ulist"><ul>   <li>   <p>  -<tt>struct strbuf</tt>  +<code>struct strbuf</code>   </p>   </li>   </ul></div>  -<div class="paragraph"><p>This is the string buffer structure. The <tt>len</tt> member can be used to  -determine the current length of the string, and <tt>buf</tt> member provides  +<div class="paragraph"><p>This is the string buffer structure. The <code>len</code> member can be used to  +determine the current length of the string, and <code>buf</code> member provides   access to the string itself.</p></div>   </div>   </div>  @@ -842,7 +840,7 @@  </p>   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>strbuf_init</tt>  +<code>strbuf_init</code>   </dt>   <dd>   <p>  @@ -851,7 +849,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_release</tt>  +<code>strbuf_release</code>   </dt>   <dd>   <p>  @@ -860,17 +858,17 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_detach</tt>  +<code>strbuf_detach</code>   </dt>   <dd>   <p>   Detach the string from the strbuf and returns it; you now own the   storage the string occupies and it is your responsibility from then on  - to release it with <tt>free(3)</tt> when you are done with it.  + to release it with <code>free(3)</code> when you are done with it.   </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_attach</tt>  +<code>strbuf_attach</code>   </dt>   <dd>   <p>  @@ -883,7 +881,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_swap</tt>  +<code>strbuf_swap</code>   </dt>   <dd>   <p>  @@ -898,7 +896,7 @@  </p>   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>strbuf_avail</tt>  +<code>strbuf_avail</code>   </dt>   <dd>   <p>  @@ -906,31 +904,31 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_grow</tt>  +<code>strbuf_grow</code>   </dt>   <dd>   <p>   Ensure that at least this amount of unused memory is available after  - <tt>len</tt>. This is used when you know a typical size for what you will add  + <code>len</code>. This is used when you know a typical size for what you will add   and want to avoid repetitive automatic resizing of the underlying buffer.   This is never a needed operation, but can be critical for performance in   some cases.   </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_setlen</tt>  +<code>strbuf_setlen</code>   </dt>   <dd>   <p>   Set the length of the buffer to a given value. This function does <strong>not</strong>  - allocate new memory, so you should not perform a <tt>strbuf_setlen()</tt> to a  - length that is larger than <tt>len + strbuf_avail()</tt>. <tt>strbuf_setlen()</tt> is  + allocate new memory, so you should not perform a <code>strbuf_setlen()</code> to a  + length that is larger than <code>len + strbuf_avail()</code>. <code>strbuf_setlen()</code> is   just meant as a <em>please fix invariants from this strbuf I just messed   with</em>.   </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_reset</tt>  +<code>strbuf_reset</code>   </dt>   <dd>   <p>  @@ -945,16 +943,16 @@  </p>   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>strbuf_trim</tt>  +<code>strbuf_trim</code>   </dt>   <dd>   <p>   Strip whitespace from the beginning and end of a string.  - Equivalent to performing <tt>strbuf_rtrim()</tt> followed by <tt>strbuf_ltrim()</tt>.  + Equivalent to performing <code>strbuf_rtrim()</code> followed by <code>strbuf_ltrim()</code>.   </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_rtrim</tt>  +<code>strbuf_rtrim</code>   </dt>   <dd>   <p>  @@ -962,7 +960,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_ltrim</tt>  +<code>strbuf_ltrim</code>   </dt>   <dd>   <p>  @@ -970,7 +968,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_reencode</tt>  +<code>strbuf_reencode</code>   </dt>   <dd>   <p>  @@ -979,15 +977,15 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_tolower</tt>  +<code>strbuf_tolower</code>   </dt>   <dd>   <p>  - Lowercase each character in the buffer using <tt>tolower</tt>.  + Lowercase each character in the buffer using <code>tolower</code>.   </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_cmp</tt>  +<code>strbuf_cmp</code>   </dt>   <dd>   <p>  @@ -1011,13 +1009,13 @@  </td>   <td class="content">All of the functions in this section will grow the buffer as necessary.   If they fail for some reason other than memory shortage and the buffer hadn&#8217;t  -been allocated before (i.e. the <tt>struct strbuf</tt> was set to <tt>STRBUF_INIT</tt>),  +been allocated before (i.e. the <code>struct strbuf</code> was set to <code>STRBUF_INIT</code>),   then they will free() it.</td>   </tr></table>   </div>   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>strbuf_addch</tt>  +<code>strbuf_addch</code>   </dt>   <dd>   <p>  @@ -1025,7 +1023,15 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_insert</tt>  +<code>strbuf_addchars</code>  +</dt>  +<dd>  +<p>  + Add a character the specified number of times to the buffer.  +</p>  +</dd>  +<dt class="hdlist1">  +<code>strbuf_insert</code>   </dt>   <dd>   <p>  @@ -1034,7 +1040,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_remove</tt>  +<code>strbuf_remove</code>   </dt>   <dd>   <p>  @@ -1042,16 +1048,16 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_splice</tt>  +<code>strbuf_splice</code>   </dt>   <dd>   <p>  - Remove the bytes between <tt>pos..pos+len</tt> and replace it with the given  + Remove the bytes between <code>pos..pos+len</code> and replace it with the given   data.   </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_add_commented_lines</tt>  +<code>strbuf_add_commented_lines</code>   </dt>   <dd>   <p>  @@ -1060,7 +1066,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_add</tt>  +<code>strbuf_add</code>   </dt>   <dd>   <p>  @@ -1068,7 +1074,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_addstr</tt>  +<code>strbuf_addstr</code>   </dt>   <dd>   <p>  @@ -1085,16 +1091,16 @@  </div>   <div class="listingblock">   <div class="content">  -<pre><tt>strbuf_add(..., s, strlen(s));</tt></pre>  +<pre><code>strbuf_add(..., s, strlen(s));</code></pre>   </div></div>   <div class="paragraph"><p>Meaning that this is efficient to write things like:</p></div>   <div class="listingblock">   <div class="content">  -<pre><tt>strbuf_addstr(sb, "immediate string");</tt></pre>  +<pre><code>strbuf_addstr(sb, "immediate string");</code></pre>   </div></div>   </dd>   <dt class="hdlist1">  -<tt>strbuf_addbuf</tt>  +<code>strbuf_addbuf</code>   </dt>   <dd>   <p>  @@ -1102,7 +1108,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_adddup</tt>  +<code>strbuf_adddup</code>   </dt>   <dd>   <p>  @@ -1111,7 +1117,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_expand</tt>  +<code>strbuf_expand</code>   </dt>   <dd>   <p>  @@ -1119,35 +1125,35 @@  placeholders. To that end, it parses the string and calls the specified   function for every percent sign found.   </p>  -<div class="paragraph"><p>The callback function is given a pointer to the character after the <tt>%</tt>  +<div class="paragraph"><p>The callback function is given a pointer to the character after the <code>%</code>   and a pointer to the struct strbuf. It is expected to add the expanded   version of the placeholder to the strbuf, e.g. to add a newline  -character if the letter <tt>n</tt> appears after a <tt>%</tt>. The function returns  -the length of the placeholder recognized and <tt>strbuf_expand()</tt> skips  +character if the letter <code>n</code> appears after a <code>%</code>. The function returns  +the length of the placeholder recognized and <code>strbuf_expand()</code> skips   over it.</p></div>  -<div class="paragraph"><p>The format <tt>%%</tt> is automatically expanded to a single <tt>%</tt> as a quoting  -mechanism; callers do not need to handle the <tt>%</tt> placeholder themselves,  +<div class="paragraph"><p>The format <code>%%</code> is automatically expanded to a single <code>%</code> as a quoting  +mechanism; callers do not need to handle the <code>%</code> placeholder themselves,   and the callback function will not be invoked for this placeholder.</p></div>   <div class="paragraph"><p>All other characters (non-percent and not skipped ones) are copied   verbatim to the strbuf. If the callback returned zero, meaning that the   placeholder is unknown, then the percent sign is copied, too.</p></div>   <div class="paragraph"><p>In order to facilitate caching and to make it possible to give  -parameters to the callback, <tt>strbuf_expand()</tt> passes a context pointer,  +parameters to the callback, <code>strbuf_expand()</code> passes a context pointer,   which can be used by the programmer of the callback as she sees fit.</p></div>   </dd>   <dt class="hdlist1">  -<tt>strbuf_expand_dict_cb</tt>  +<code>strbuf_expand_dict_cb</code>   </dt>   <dd>   <p>  - Used as callback for <tt>strbuf_expand()</tt>, expects an array of  + Used as callback for <code>strbuf_expand()</code>, expects an array of   struct strbuf_expand_dict_entry as context, i.e. pairs of   placeholder and replacement string. The array needs to be   terminated by an entry with placeholder set to NULL.   </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_addbuf_percentquote</tt>  +<code>strbuf_addbuf_percentquote</code>   </dt>   <dd>   <p>  @@ -1158,7 +1164,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_humanise_bytes</tt>  +<code>strbuf_humanise_bytes</code>   </dt>   <dd>   <p>  @@ -1167,7 +1173,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_addf</tt>  +<code>strbuf_addf</code>   </dt>   <dd>   <p>  @@ -1175,7 +1181,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_commented_addf</tt>  +<code>strbuf_commented_addf</code>   </dt>   <dd>   <p>  @@ -1184,7 +1190,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_fread</tt>  +<code>strbuf_fread</code>   </dt>   <dd>   <p>  @@ -1196,14 +1202,14 @@  <div class="title">Note</div>   </td>   <td class="content">The buffer is rewound if the read fails. If -1 is returned,  -<tt>errno</tt> must be consulted, like you would do for <tt>read(3)</tt>.  -<tt>strbuf_read()</tt>, <tt>strbuf_read_file()</tt> and <tt>strbuf_getline()</tt> has the  +<code>errno</code> must be consulted, like you would do for <code>read(3)</code>.  +<code>strbuf_read()</code>, <code>strbuf_read_file()</code> and <code>strbuf_getline()</code> has the   same behaviour as well.</td>   </tr></table>   </div>   </dd>   <dt class="hdlist1">  -<tt>strbuf_read</tt>  +<code>strbuf_read</code>   </dt>   <dd>   <p>  @@ -1212,7 +1218,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_read_file</tt>  +<code>strbuf_read_file</code>   </dt>   <dd>   <p>  @@ -1221,7 +1227,7 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_readlink</tt>  +<code>strbuf_readlink</code>   </dt>   <dd>   <p>  @@ -1230,40 +1236,40 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_getline</tt>  +<code>strbuf_getline</code>   </dt>   <dd>   <p>   Read a line from a FILE *, overwriting the existing contents   of the strbuf. The second argument specifies the line  - terminator character, typically <tt>'\n'</tt>.  + terminator character, typically <code>'\n'</code>.   Reading stops after the terminator or at EOF. The terminator   is removed from the buffer before returning. Returns 0 unless  - there was nothing left before EOF, in which case it returns <tt>EOF</tt>.  + there was nothing left before EOF, in which case it returns <code>EOF</code>.   </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_getwholeline</tt>  +<code>strbuf_getwholeline</code>   </dt>   <dd>   <p>  - Like <tt>strbuf_getline</tt>, but keeps the trailing terminator (if  + Like <code>strbuf_getline</code>, but keeps the trailing terminator (if   any) in the buffer.   </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_getwholeline_fd</tt>  +<code>strbuf_getwholeline_fd</code>   </dt>   <dd>   <p>  - Like <tt>strbuf_getwholeline</tt>, but operates on a file descriptor.  + Like <code>strbuf_getwholeline</code>, but operates on a file descriptor.   It reads one character at a time, so it is very slow. Do not   use it unless you need the correct position in the file   descriptor.   </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_getcwd</tt>  +<code>strbuf_getcwd</code>   </dt>   <dd>   <p>  @@ -1271,16 +1277,16 @@  </p>   </dd>   </dl></div>  -<div class="paragraph"><p><tt>strbuf_add_absolute_path</tt></p></div>  +<div class="paragraph"><p><code>strbuf_add_absolute_path</code></p></div>   <div class="literalblock">   <div class="content">  -<pre><tt>Add a path to a buffer, converting a relative path to an  +<pre><code>Add a path to a buffer, converting a relative path to an   absolute one in the process. Symbolic links are not  -resolved.</tt></pre>  +resolved.</code></pre>   </div></div>   <div class="dlist"><dl>   <dt class="hdlist1">  -<tt>stripspace</tt>  +<code>stripspace</code>   </dt>   <dd>   <p>  @@ -1289,37 +1295,37 @@  </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_split_buf</tt>  +<code>strbuf_split_buf</code>   </dt>   <dt class="hdlist1">  -<tt>strbuf_split_str</tt>  +<code>strbuf_split_str</code>   </dt>   <dt class="hdlist1">  -<tt>strbuf_split_max</tt>  +<code>strbuf_split_max</code>   </dt>   <dt class="hdlist1">  -<tt>strbuf_split</tt>  +<code>strbuf_split</code>   </dt>   <dd>   <p>   Split a string or strbuf into a list of strbufs at a specified   terminator character. The returned substrings include the  - terminator characters. Some of these functions take a <tt>max</tt>  + terminator characters. Some of these functions take a <code>max</code>   parameter, which, if positive, limits the output to that   number of substrings.   </p>   </dd>   <dt class="hdlist1">  -<tt>strbuf_list_free</tt>  +<code>strbuf_list_free</code>   </dt>   <dd>   <p>   Free a list of strbufs (for example, the return values of the  - <tt>strbuf_split()</tt> functions).  + <code>strbuf_split()</code> functions).   </p>   </dd>   <dt class="hdlist1">  -<tt>launch_editor</tt>  +<code>launch_editor</code>   </dt>   <dd>   <p>  @@ -1337,7 +1343,7 @@  <div id="footnotes"><hr /></div>   <div id="footer">   <div id="footer-text">  -Last updated 2014-09-02 14:43:52 PDT  +Last updated 2014-09-19 15:32:09 PDT   </div>   </div>   </body>  
diff --git a/technical/api-strbuf.txt b/technical/api-strbuf.txt index 430302c..cca6543 100644 --- a/technical/api-strbuf.txt +++ b/technical/api-strbuf.txt 
@@ -160,6 +160,10 @@   	Add a single character to the buffer.   +`strbuf_addchars`:: + +	Add a character the specified number of times to the buffer. +  `strbuf_insert`::   	Insert data to the given position of the buffer. The remaining contents